当前位置:   article > 正文

vue+elementUI实现点击左右箭头切换按钮功能_element tabs 添加左右切换按钮

element tabs 添加左右切换按钮

原本是可以用el-tabs做的,就像下面的样式,但是领导说不行

最后用button和element里面的el-carousel(走马灯)结合了一下

长这样  感觉还不错 可以自己改样式


代码如下:

  1. <div class="drawer-carousel">
  2. <el-carousel arrow="always" :loop="false" :initial-index="0" indicator-position="none" :autoplay="false"
  3. height="60px" :items-per-page="6">
  4. <el-carousel-item v-for="(group, index) in Math.ceil(tabs.length / 6)" :key="index">
  5. <div class="button-group">
  6. <el-button v-for="(tab, tabIndex) in tabs.slice(index * 6, (index + 1) * 6)" :key="tabIndex"
  7. @click="handleClickReport(tab.reportCoreId)" size="medium">
  8. <el-tooltip :content="tab.reportCoreName" :disabled="isShowTooltip" :open-delay="100" placement="top"
  9. effect="light">
  10. <span class="span-ellipsis" @mouseover="mouseOver($event)">{{ tab.reportCoreName }}</span>
  11. </el-tooltip>
  12. </el-button>
  13. </div>
  14. </el-carousel-item>
  15. </el-carousel>
  16. </div>

 

解释一下

  • arrow="always" 显示左右箭头,loop="false" 表示不循环滚动,indicator-position="none" 表示不显示指示器,:autoplay="false" 表示不自动播放,height="60px" 设置 Carousel 的高度,:items-per-page="6" 表示每页显示6个按钮。

  • <el-carousel-item>:这是 Carousel 的每一页,  用 v-for 循环来生成足够的 Carousel 页面,存放所有的按钮。Math.ceil(tabs.length / 6) 计算出需要多少页,每页6个按钮。

  • <el-button>:用 v-for 循环来生成每一页中的6个按钮。用 tabs.slice(index * 6, (index + 1) * 6) 来选取每页6个按钮,确保在当前页面范围内显示正确的按钮。

一些css样式

  1. .drawer-carousel {
  2. padding: 10px 10px 0 0;
  3. position: relative;
  4. .button-group {
  5. margin: 0 20px 0 40px;
  6. white-space: nowrap;
  7. span {
  8. display: inline-block;
  9. width: 90px;
  10. overflow: hidden;
  11. white-space: nowrap;
  12. text-overflow: ellipsis;
  13. }
  14. }
  15. }
  16. //按钮样式
  17. .el-carousel__arrow--left,
  18. .el-carousel__arrow--right {
  19. font-size: 30px;
  20. color: #1C1C1C;
  21. }
  22. .el-carousel__arrow--left {
  23. left: 0px;
  24. }
  25. .el-carousel__arrow--right {
  26. right: 0;
  27. }

如果放六个超出了,就设置一下button不换行  再给里面的文字设置超出显示省略号就好了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/581698
推荐阅读
相关标签
  

闽ICP备14008679号