简单入门示例:快速使用:

<template>
<div class="wrapper">
<div class="content">
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
</div>
</template> <script>
import BScroll from 'better-scroll'
export default {
name: 'XScroll',
// 不能在生命周期created时获取dom ,这时还没有加载完html
mounted () {
/* eslint-disable no-new */
new BScroll(document.querySelector('.wrapper'))
// 获取dom方式一
// new BScroll(document.querySelector('.wrapper'))
// 获取dom方式二
// new BScroll(document.querySelector(this.$refs.foo))
}
}
</script> <style scoped>
.wrapper{
height: 150px;
border: 1px solid #42b983;
overflow: hidden;
}
</style>

简单使用示例

常用方法包括上拉激活,和滚动事件,

<template>
<div class="wrapper">
<div class="content">
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
</div>
</template> <script>
import BScroll from 'better-scroll' export default {
name: 'XScroll',
// 不能在生命周期created时获取dom ,这时还没有加载完html
mounted () {
/* eslint-disable no-new */
const bscroll = new BScroll(document.querySelector('.wrapper'), {
probeType: 3,
pullUpLoad: true
})
bscroll.on('scroll', (position) => {
console.log(position)
})
// 获取dom方式一
// new BScroll(document.querySelector('.wrapper'))
// 获取dom方式二
// new BScroll(document.querySelector(this.$refs.foo))
// pullingUp 上拉到头激活
bscroll.on('pullingUp', () => {
setTimeout(() => {
// 拉到底了通知又名上拉加载只能加载一次,finishllup函数可以在次重来
bscroll.finishPullUp()
alert('又可以加了')
}, 2000)
})
}
}
</script> <style scoped>
.wrapper {
height: 150px;
border: 1px solid #42b983;
overflow: hidden;
}
</style>

常用方法

插件封组,封装以后,那些组件需要引用的话,外层套一个bcroll 就可以使用,比较方便 ,主要原因是如果更换bcroll 版本不需要每个文件都换

<template>
<div class="wrapper" ref="wrapper">
<div class="content">
<slot></slot>
</div>
</div>
</template> <script>
import BScroll from 'better-scroll' export default {
name: 'Scroll',
data () {
return {
Scroll: ''
}
},
mounted () {
// 以下方式不太明智,建议用ref方式,同名CLASS 会出问题
// this.scroll = new BScroll(document.querySelector('.wrapper'))
this.Scroll = new BScroll(this.$refs.wrapper)
}
}
</script> <style scoped> </style>

使用示例:里面的内空不能用浮动布局,一旦脱离文档流,将不能参与计算,想让一个div区显示在正中,方法有二,第一个方法是使div定位top button 第二个方法是计算视口高度,先算上上面元素多少
然后百分比显示在中间,以下示例计算视口高度算法:

<template>
<div>
<div class="home">
<div class=" text hiet">众油宝商城菜单</div>
<b-scroll class="wrapper">
<div class="content">
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
</b-scroll>
<div class="text bter">bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb</div>
</div>
</div>
</template>

<script>
import bScroll from '../components/common/scroll/bScroll'

export default {
name: 'bIndex',
components: {
bScroll
}
}
</script>

<style scoped>
.home{
border: 2px solid #0074D9;
//通过height 计算视口高度
height: 100vh;
}
.text{
height:45px ;
line-height: 45px;
background: #7f7f7f;
}
.wrapper {
width: 450px;
height: calc(100% - 98px);
//滚动位置根据视口高度计算
border: #C21F39 1px solid;
overflow: hidden;
}

ul {
padding: 0;
padding-left: 5px;
width: 440px;
height: auto;
margin: 0 auto;
border: 2px solid #C21F39;
overflow: hidden;

}

li {
list-style-type: none;
float: left;
margin: 2px;
width: 210px;
background: #999999;
height: 350px;
}

</style>

  

better-scroll 1.13的更多相关文章

  1. uni-app中实现图片左滑的效果

    template: 1 <view class="my-reg"> 2 <view class="my-regs"> 3 <ima ...

  2. 前端资讯周报 3.13 - 3.19: WebVR来了!以及如何优化scroll事件性能

    每周一我都会分享上一周我订阅的技术站点中,和解决问题的过程中阅读到的值得分享的文章.这是迫使我学习的一个动力 本周推荐 Minecraft in WebVR with HTML Using A-Fra ...

  3. MUI开发APP,scroll组件,运用到区域滚动

    最近在开发APP的过程中,遇到一个问题,就是内容有一个固定的头部和底部.         头部就是我们常用的header了,底部的话,就放置一个button,用来提交页面数据或者进入下一个页面等,效果 ...

  4. 【前端性能】高性能滚动 scroll 及页面渲染优化--转发

    本文主要想谈谈页面优化之滚动优化. 主要内容包括了为何需要优化滚动事件,滚动与页面渲染的关系,节流与防抖,pointer-events:none 优化滚动.因为本文涉及了很多很多基础,可以对照上面的知 ...

  5. position:fixed和scroll实现div浮动【示例】

    前言 在自己建站的过程中,要实现一个div随滚动条浮动的效果,网上找了些示例不太好用,还是自己动手,丰衣足食,写的不好请大家谅解,毕竟我不是搞前端的,因为自己建站毕竟每一步都必须自己来,这边只是做个记 ...

  6. Python的平凡之路(13)

    一.Python的paramiko模块介绍 Python 的paramiko模块,该模块和SSH用于连接远程服务器并执行相关操作 SSH client 用于连接远程服务器并执行基本命令 基于用户名和密 ...

  7. 高性能滚动 scroll 及页面渲染优化

    最近在研究页面渲染及web动画的性能问题,以及拜读<CSS SECRET>(CSS揭秘)这本大作. 本文主要想谈谈页面优化之滚动优化. 主要内容包括了为何需要优化滚动事件,滚动与页面渲染的 ...

  8. baidu时光轴_使用window.scroll实现的

    <!DOCTYPE html> <html> <head> <title></title> <meta charset="u ...

  9. [转] jQuery Infinite Ajax Scroll(ias) 分页插件介绍

    原文链接:http://justflyhigh.com/index.php/articlec/index/index.php?s=content&m=aticle&id=91 Infi ...

  10. JavaScript高级程序设计(第三版)学习笔记13、14章

    第13章,事件 事件冒泡 IE的事件叫做事件冒泡:由具体到不具体 <!DOCTYPE html> <html> <head>      <title>E ...

随机推荐

  1. # github突破7k star 即时通讯(IM)开源项目OpenIM每周迭代版本发布

    v2.0已经重构完毕,架构更清晰,代码更规范,邀请各位参与OpenIM社区建设有兴趣的同学可以加我私聊. 目前侧正在业务开发,已提供更多功能,包括群管理,阅后即焚,朋友圈,标签下发等. web端体验: ...

  2. C# await和Result对比

    1.Result 上图是微软官网的截图,由图可知在使用GetXXXX的方法的时候,会阻塞调用其他线程,直到当前异步操作完成,相当于调用wait方法.但是使用异步编程应该避免使用TASK.WAIT或TA ...

  3. MetaGPT( The Multi-Agent Framework):颠覆AI开发的革命性多智能体元编程框架

    "MetaGPT( The Multi-Agent Framework):颠覆AI开发的革命性多智能体元编程框架" 一个多智能体元编程框架,给定一行需求,它可以返回产品文档.架构设 ...

  4. C/C++ 获取自身IP与域名片段

    判断大端序小端序: 通常情况下,数值在内存中存储的方式有两种,一种是大尾字节序,另一种是小尾,比如0x01020304这样一个数值,如果用大尾方式存储,其存储方式为01 02 03 04而用小尾方式存 ...

  5. 散片便宜300元!但还是劝你买盒装CPU

    喜欢DIY的小伙伴在选购产品时会纠结于散片和盒装,以13代酷睿i5-13600KF为例,散片一般是1899元左右,而盒装2199元,两者相差300元,AMD的锐龙5 7600也差不多,盒装和散片相差也 ...

  6. 基于Python的用户登录和密码强度等级测试|Python小应用

    前言 那么这里博主先安利一些干货满满的专栏了! 这两个都是博主在学习Linux操作系统过程中的记录,希望对大家的学习有帮助! 操作系统Operating Syshttps://blog.csdn.ne ...

  7. 教你用JavaScript实现背景图像滑动

    案例介绍 欢迎来到我的小院,我是霍大侠,恭喜你今天又要进步一点点了!我们来用JavaScript编程实战案例,做一个背景图像滚动效果.滚动鼠标背景图像缩小,下方滑动出现文字.通过实战我们将学会obj. ...

  8. Java 中,byte 数据类型的取值范围为什么是 -128 - 127 ?其它数值类型 都雷同

    byte 的取值范围:-128 - 127 基本的数学计算方法,一个byte占8位,第一位为符号位,还有7位,7位能表示最大为:2^7 - 1 怎么来的呢:看如下数学计算 1111 111 = 2^0 ...

  9. google三驾马车之一:Bigtable解读(英文版)

    本文重点关注了系统设计相关的内容,paper后半部分的具体应用此处没有过多涉及.从个人笔记修改而来,因此为英文版本. Bigtable: A Distributed Storage System fo ...

  10. NC19995 [HAOI2015]树上操作

    题目链接 题目 题目描述 有一棵点数为 N 的树,以点 1 为根,且树点有边权. 然后有 M 个 操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a . 操作 2 :把某个节点 x 为根的子 ...