当前位置: 首页 > news >正文

宜春做网站的公司哪家好做网站用地图

宜春做网站的公司哪家好,做网站用地图,微信引流获客软件,html5自学教程vue实现自定义滚动条 具体效果如下,这边我用的rem单位,比例是1:40, 先写下页面布局,把原生的滚动条给隐藏掉,给自定义的滑块增加transition: marginLeft 1s linear;可以使左边距过度的更顺滑 .top-box-2::-webkit-scr…

vue实现自定义滚动条

具体效果如下,这边我用的rem单位,比例是1:40,

vue实现自定义滚动条

先写下页面布局,把原生的滚动条给隐藏掉,给自定义的滑块增加transition: marginLeft 1s linear;可以使左边距过度的更顺滑
 .top-box-2::-webkit-scrollbar {height: 0;}
  <div class="wrap"><!-- 滚动窗口 --><divclass="top-box-2"@scroll="onScroll"ref="box1"><divclass="top-item"v-for="(item,index) in 6":key="index"></div></div><!-- 自定义滚动条 --><divclass="bar"ref="bar"><!-- 滚动滑块 --><spanref="barInner":style="{'margin-left':barLeft+'px'}"></span></div></div>
首先我们要先获取滚动窗口的滚动百分比
 this.diff = this.$refs.box1.scrollWidth - this.$refs.box1.clientWidth; //获取原生滚动条可以滚动的距离,盒子的总宽度-盒子的可视宽度this.barWidth =this.$refs.bar.clientWidth - this.$refs.barInner.clientWidth; //获取自定义滚动条可以滚动的距离,盒子的总宽度-滑块的宽度
然后获取滚动盒子的百分比,然后设置自定义滚动条滑块的左边距
      this.radio = Math.ceil((e.target.scrollLeft * 100) / this.diff); //获取原生滚动盒子的百分比this.barLeft = this.barWidth * (this.radio / 100);   //计算自定义滑块左边距

下面是完整的代码

<template><div class="wrap"><!-- 滚动窗口 --><divclass="top-box-2"@scroll="onScroll"ref="box1"><divclass="top-item"v-for="(item,index) in 6":key="index"></div></div><!-- 自定义滚动条 --><divclass="bar"ref="bar"><!-- 滚动滑块 --><spanref="barInner":style="{'margin-left':barLeft+'px'}"></span></div></div>
</template><script>
export default {data() {return {diff: 0,scrollLeft: 0,radio: 0,barLeft: 0,barWidth: 0,barInnerWidth: 0,};},mounted() {// 延迟2秒执行获取元素宽度的方法,否则原生滚动条可以滚动的距离计算出来会是0setTimeout(() => {this.$nextTick(() => {this.init();});}, 2000);},methods: {init() {this.diff = this.$refs.box1.scrollWidth - this.$refs.box1.clientWidth; //获取原生滚动条可以滚动的距离,盒子的总宽度-盒子的可视宽度this.barWidth =this.$refs.bar.clientWidth - this.$refs.barInner.clientWidth; //获取自定义滚动条可以滚动的距离,盒子的总宽度-滑块的宽度},onScroll(e) {this.radio = Math.ceil((e.target.scrollLeft * 100) / this.diff); //获取原生滚动盒子的百分比this.barLeft = this.barWidth * (this.radio / 100); //计算自定义滑块左边距},},
};
</script><style lang='scss' scoped>
.wrap {.top-box-2::-webkit-scrollbar {height: 0;}.top-box-2 {display: flex;height: 5rem;overflow-x: scroll;margin: 0 2rem;.top-item {flex-shrink: 0;width: 4rem;height: 3rem;border: 0.04rem solid red;margin: 0.5rem;box-sizing: border-box;&:first-child {margin: 0.5rem 0.5rem 0.5rem 0;}&:last-child {margin: 0.5rem 0 0.5rem 0.5rem;}}}.bar {width: 3rem;border-radius: 0.5rem;height: 0.5rem;border: 0.02rem solid red;margin: 0 auto;span {display: block;width: 0.8rem;height: 0.5rem;background: blueviolet;border-radius: 0.5rem;transition: marginLeft 1s linear;}}
}
</style>
http://www.yayakq.cn/news/722882/

相关文章:

  • 苏州网站seo优化接入服务商网站备案管理系统技术规范要求
  • 域名网站建设方案书建设银行网站的目的
  • 建设官方网站wordpress获取4条文章标题
  • 网站商城注意事项做类似猪八戒网的网站
  • 长沙多迪php网站开发培训学校企业宣传网站方案
  • 菏泽市建设局网站电话号码做网站先学什么
  • 云建站精品模版天威虎建设集团官方网站
  • 做网站服务器多大的好单仁网站建设
  • 南宁网络公司网站建设最新黑帽seo教程
  • wordpress注册界面修改密码网站seo怎么填写
  • 效果好的锦州网站建设石景山做网站的公司
  • 东莞微信网站建设推荐网站建设浏览器不兼容
  • 淘宝客做连接网站吗泰安专业的网站制作
  • 桂林北站时刻表c2c模式类型
  • wordpress 下载受限常州网站推广优化
  • 素材网站整站下载南庄营销网站建设
  • 学会网站建设的重要性网站建设备案图片
  • 龙岗商城网站建设教程个人工作室项目
  • 房地产网站加盟平面设计素材图
  • 盐城网站制作哪家好推荐佛山顺德网站建设
  • 做网站的公司那家好。wordpress怎样静态化
  • 做淘宝客可以有高佣金的网站上海网站设计制作报价
  • 信用徐州网站建设情况做电子简历的网站
  • 网站改版会影响排名吗营销网站建设的原则
  • 网站地图怎么添加网站栏目做跳转后不显示
  • 杭州网站免费制作免费搭建平台网站
  • 视频网站建设服务网站添加qq聊天
  • 盐田区住房和建设局网站做网站的公司哪个好
  • 站外推广6种方法自己做的优惠卷网站怎么进商品
  • 中国建设银行洛阳分行官网站抖音的电子商务网站建设