vue项目分类列表添加滚动条

传参形式:
list: [
{name: ‘新手’, url: ‘’, img: require(’@/assets/menu/yd.png’)},
{name: ‘会员’, url: ‘’, img: require(’@/assets/menu/hy.png’)},
]

<template>
  <div class="hall">
    <div id="hallOne">
      <div @click="click(item)" :key="index" v-for="(item, index) in list">
        <div class="img_div">
          <img :src="item.img" alt="暂无图片">
        </div>
        <div class="grid_div">{{item.name}}</div>
      </div>
    </div>
    <div class="gudong">
      <div id="tiao"></div>
    </div>
  </div>
</template>

<script>
export default {
  name: 'scroll',
  props: {
    list: {
      type: Array,
      default: () => {[]}
    }
  },
  mounted() {
    var h =  document.getElementById("hallOne")
    h.onscroll = () => {
      var tiao = document.getElementById("tiao")
      var x = h.scrollWidth - h.clientWidth
      tiao.style.marginLeft = h.scrollLeft * 30/x + 'px'
    }
  },
  methods: {
    click(item) {
      this.$emit('click', item)
    }
  },
}
</script>

<style lang="scss" scoped>
.hall {
  background: #fff;
  padding: 10px 0;
  height: 90px;
  width: 100%;
  #hallOne {
    display: flex;
    height: 80px;
    overflow-x: auto;
    > div {
      padding: 5px 0;
      text-align: center;
      flex-basis: 75px;
      flex-shrink: 0;
    }
  }
  #hallOne::-webkit-scrollbar {
    display: none;
  }
  .img_div {
    position: relative;
    height: 45px;
    img {
      width: 34px;
      height: 34px;
    }
  }
  .grid_div {
    font-size: 12px;
  }
  .gudong {
    height: 5px;
    border-radius: 3px;
    width: 50px;
    margin: 0 auto;
    background: #999;
    #tiao {
      height: 5px;
      width: 20px;
      border-radius: 3px;
      background: #ee4a50;
    }
  }
}

</style>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值