横向菜单超出展示在更多中(自适应)

244 阅读1分钟

点击查看预览地址


image.png

有这样一个需求,当横向菜单过多时,超出的部分显示在最后一栏的“更多”菜单中,期间需要动态计算出第几个菜单超出了,从而去做截取,当不超出时则不显示“更多”菜单

此示例基于vue2实现的一个混入函数,使用时需要进行混入并传参即可

  • 混入的使用
import ElOverflowCalc from "@/mixins/ElOverflowCalc.js";
  • 使用
mixins: [
     ElOverflowCalc(function () {
            return {
            containerEl: 容器元素,
            contentEl: 内容元素,
            itemClass: 内容每项item的class
            maxLength: 菜单总数,
            gap: 超出间距,
        };
    })
]

*注:具体查看代码,通过调整页面窗口大小来查看效果