vue better-scroll的滚动插件使用详解

这次给大家带来vue better-scroll的滚动插件使用详解,使用vue better-scroll的滚动插件的注意事项有哪些,下面就是实战案例,一起来看一下。

BetterScroll号称目前最好用的移动端滚动插件,因此它的强大之处肯定是存在的。要不…哈哈。个人感觉还是很好用的。这篇文章不是笼统的讲 BetterScroll ,而是单讲滚动,想要深入了解它,请移步这里 。

滚动原理

better-scroll 是什么滚动原理

better-scroll 是一款重点解决移动端(已支持 PC)各种滚动场景需求的插件。它的核心是借鉴的 iscroll 的实现,它的 API 设计基本兼容 iscroll,在 iscroll 的基础上又扩展了一些 feature 以及做了一些性能优化。

better-scroll 是基于原生 JS 实现的,不依赖任何框架。它编译后的代码大小是 63kb,压缩后是 35kb,gzip 后仅有 9kb,是一款非常轻量的 JS lib。

绿色部分为 wrapper,也就是父容器,它会有固定的高度。黄色部分为 content,它是父容器的第一个子元素,它的高度会随着内容的大小而撑高。那么,当 content 的高度不超过父容器的高度,是不能滚动的,而它一旦超过了父容器的高度,我们就可以滚动内容区了。横向滚动的原理一致就是将固定高度改为固定宽度。(这里就不啰嗦了)

纵向滚动

废话不多说,我们直接上代码。

 

  • {{item}}

import BScroll from 'better-scroll'; export default { mounted() { this.$nextTick(() => { this.scroll = new BScroll(this.$refs.wrapper); }); } }; .wrapper{ overflow:hidden; height:100vh; } ul li{ height:400px; }

登录后复制

这是一个Vue BetterScroll纵向滚动demo,这里需要注意的有两点。

只能有一层父级p,也就是容器

父级p要设置溢出隐藏,并且固定高度

横向滚动

横向滚动,相比纵向滚动需要动态的去获取滚动区的宽度,直接上代码。

 

  • {{item.title}}

import BScroll from 'better-scroll'; export default { data() { return{ itemList:[ { 'title':'关注' }, { 'title':'推荐' }, { 'title':'深圳' }, { 'title':'视频' }, { 'title':'音乐' }, { 'title':'热点' }, { 'title':'新时代' }, { 'title':'娱乐' }, { 'title':'头条号' }, { 'title':'问答' }, { 'title':'图片' }, { 'title':'科技' }, { 'title':'体育' }, { 'title':'财经' }, { 'title':'军事' }, { 'title':'国际' } ] } }, created() { this.$nextTick(() => { this.InitTabScroll(); }); }, methods:{ InitTabScroll(){ let width=0 for (let i = 0; i { if (!this.scroll) { this.scroll=new BScroll(this.$refs.tab, { startX:0, click:true, scrollX:true, scrollY:false, eventPassthrough:'vertical' }); }else{ this.scroll.refresh() } }); } } }; .tab{ width: 100vw; overflow: hidden; padding:5px; .tab_content{ line-height: 2rem; display: flex; .tab_item{ flex: 0 0 60px; width:60px; } } }

登录后复制

横向滚动需要注意。

只能有一层父级p,也就是容器

父容器要设置溢出隐藏并固定宽度

动态获取滚动区的宽度

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

立即学习“前端免费学习笔记(深入)”;

在vue中的全选与反选

使用mint-ui时间插件时怎么获取选择值

以上就是vue better-scroll的滚动插件使用详解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2773175.html

(0)
上一篇 2025年3月8日 13:42:26
下一篇 2025年3月8日 13:42:39

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 在vue项目中怎样使用上传组件

    这次给大家带来在vue项目中怎样使用上传组件,在vue项目中使用上传组件的注意事项有哪些,下面就是实战案例,一起来看一下。 本文介绍了vue项目中使用element-ui的Upload上传组件的示例,分享给大家,具体如下: 确定 登录后复制…

    编程技术 2025年3月8日
    200
  • mysql连接池怎样使用事务自动回收(附代码)

    这次给大家带来mysql连接池怎样使用事务自动回收(附代码),mysql连接池使用事务自动回收(附代码)的注意事项有哪些,下面就是实战案例,一起来看一下。 本文实例讲述了注意事项实现mysql连接池使用事务自动回收连接的方法。分享给大家供大…

    编程技术 2025年3月8日
    200
  • JS的数组使用详解

    这次给大家带来JS的数组使用详解,JS数组使用的注意事项有哪些,下面就是实战案例,一起来看一下。 现在很多刚开始认识js的人都不是很清楚js数组是什么,js数组是怎么定义的,下面文章就给大家介绍下对于js数组的定义,对此感兴趣的下面一起来了…

    编程技术 2025年3月8日
    200
  • vue中slot与slot-scope使用步奏详解

    这次给大家带来vue中slot与slot-scope使用步奏详解,vue中slot与slot-scope使用的注意事项有哪些,下面就是实战案例,一起来看一下。 本文介绍了vue中slot与slot-scope的具体使用教程,有需要的朋友快来…

    编程技术 2025年3月8日
    200
  • 实现react服务器渲染的步奏详解

    这次给大家带来实现react服务器渲染的步奏详解,实现react服务器渲染的注意事项有哪些,下面就是实战案例,一起来看一下。 这篇文章介绍了从零开始最小实现react服务器渲染的教程,希望能帮助到大家。 最近在写 koa 的时候想到,如果我…

    编程技术 2025年3月8日
    200
  • JS里EventLoop的使用详解

    这次给大家带来JS里EventLoop的使用详解,JS里EventLoop使用的注意事项有哪些,下面就是实战案例,一起来看一下。 想象下,比如浏览器在运行一个复杂的图像转换算法,因为是单线程的,所以此时浏览器进程被阻塞了,不能进行界面渲染,…

    编程技术 2025年3月8日
    200
  • Angular17里的自定义指令使用详解

    这次给大家带来Angular17里的自定义指令使用详解,使用Angular17里自定义的注意事项有哪些,下面就是实战案例,一起来看一下。 1 什么是HTML   HTML文档就是一个纯文本文件,该文件包含了HTML元素、CSS样式以及Jav…

    编程技术 2025年3月8日
    200
  • Swiper里自定义分页器使用步奏详解

    这次给大家带来Swiper里自定义分页器使用步奏详解,使用Swiper里自定义分页器的注意事项有哪些,下面就是实战案例,一起来看一下。 HTML DEMO(官网例子) Slide 1 Slide 2 Slide 3 登录后复制 1.设置导航…

    编程技术 2025年3月8日
    200
  • 使用oxm映射xml的实现步奏

    这次给大家带来使用oxm映射xml的实现步奏,使用oxm映射xml的注意事项有哪些,下面就是实战案例,一起来看一下。 认识XML解析技术 XML相关概念 (1)DTD:XML语法规则,是XML文件的验证机制,可以通过比较XML文档和DTD文…

    编程技术 2025年3月8日
    200
  • Vue过滤器filters使用详解

    这次给大家带来Vue过滤器filters使用详解,Vue过滤器filters使用的注意事项有哪些,下面就是实战案例,一起来看一下。 示例代码 采用vue单文件组件,使用moment插件格式化日期 {{date | dateFormat}} …

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论