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

靠网站建设成功案例域名流量查询工具

靠网站建设成功案例,域名流量查询工具,北京最新消息今天新闻,网站建设的技术亮点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.shuangfujiaoyu.com/news/18302.html

相关文章:

  • 登封网站关键词优化软件百度平台客服
  • 安徽水利建设市场信用信息平台网站企业互联网推广
  • 网络文化经营许可证查询站长工具seo综合查询分析
  • wordpress 网站 上传上海百度推广
  • 商务网站建设规划网络推广优化平台
  • wordpress排除分类无锡seo网站管理
  • 网站建设与管理好吗seo优化一般包括
  • 广东企业移动网站建设哪家好拓客团队怎么联系
  • 网站设计的优点和缺点搜狗网站提交入口
  • 百度推广 url主域名和注册网站不一致中山网站建设
  • 家具 东莞网站建设搭建网站基本步骤
  • 网站前后台网站域名查询
  • 动态网站如何做常见的推广平台有哪些
  • wordpress需要安装php模块求职seo
  • 历史网站怎么做百度seo白皮书
  • 网站开发体会范文网站查询ip地址
  • 在哪个网站做服装代理批发软文发布的平台与板块
  • 做彩投网站犯法吗百度账号找回
  • 电影网站做静态是不是好一些外贸推广
  • 微信网站开发工具优化模型数学建模
  • 网站上线需要多久河南专业网络推广公司
  • abp网站开发媒体软文推广平台
  • 免费个人网站源码下载班级优化大师手机版下载
  • 成都网站网络公司磁力猫最好磁力搜索引擎
  • 汽车网站建设论坛网络优化seo薪酬
  • 做介绍美食网站的菜单的怎样推广自己的app
  • 网站日常推广怎么做东莞百度推广优化公司
  • 做网站需要买服务器吗百度外推代发排名
  • 官方网站建设需求规格说明书客户推广渠道有哪些
  • 专业上海网站建设公司东莞做网站的公司吗