针对layui左侧菜单固定宽度导致文字被省略的问题,本文介绍了一种通过JavaScript监听鼠标悬停事件来显示完整菜单文字的方案。该方法无需修改CSS或拉伸菜单,通过绑定mouseenter和mouseleave事件,利用layer.tips组件在鼠标移入时展示完整文本,移出时关闭提示,从而提升用户体验。
layui左侧菜单文字悬停显示实现方案
layui封装的左侧菜单默认采用固定宽度设计。若尝试通过CSS直接修改左侧菜单栏的宽度,不仅效果不佳,还可能影响头部菜单栏的布局。若通过JavaScript实现菜单拉伸功能,代码复杂度较高。因此,采用一种更简单的方案:利用鼠标悬停事件来展示菜单文字。

在实际显示效果中,当菜单文字内容过多时,系统会自动进行省略处理。为了优化用户体验,实现鼠标悬停时显示全部文字的功能显得尤为重要。
具体实现方式为给左侧菜单栏添加事件监控。

$('.layui-nav-child a').on({
mouseenter: function () {
var that = this;
var tips;
var fullText = that.textContent;
//console.log(that.textContent)
tips = layer.tips("<span style='color:#000;'>" + fullText + "</span>", that, { tips: [2, '#fff'], time: 0, area: 'auto', maxWidth: 500 });
},
mouseleave: function () {
layer.close(tips);
}
});核心思路是先分析子菜单的通用属性,通过打印子菜单DOM下的相关属性进行调试,随后绑定显示title属性中菜单文字的逻辑。
至此,关于layui左侧菜单栏鼠标悬停显示菜单文字功能的实现介绍完毕。如需了解更多相关layui鼠标悬停显示文字的内容,可搜索本站历史文章或继续浏览后续相关文章。