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

<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. 搭建mongo的replica set

    搭建mongo的replica set 前言 安装 构建副本集 加入认证 备份数据 备份数据到本地 数据恢复 搭建mongo的replica set 前言 准备三台机器,相互可以访问的.处理思路,先构 ...

  2. 8.4 C++ 运算符重载

    C/C++语言是一种通用的编程语言,具有高效.灵活和可移植等特点.C语言主要用于系统编程,如操作系统.编译器.数据库等:C语言是C语言的扩展,增加了面向对象编程的特性,适用于大型软件系统.图形用户界面 ...

  3. 遥感图像处理笔记之【Deep learning for Geospatial data applications — Multi-label Classification】

    遥感图像处理学习(2) 前言 遥感图像处理方向的学习者可以参考或者复刻 本文初编辑于2023年12月14日 2024年1月24日搬运至本人博客园平台 文章标题:Deep learning for Ge ...

  4. Windows 10 ISO原版镜像文件下载(2024年01月)

    Windows 10 (business editions), version 22H2 (x64) - DVD (Chinese-Simplified) 链接:https://pan.baidu.c ...

  5. CF763E Timofey and our friends animals题解

    题目链接:CF 或者 洛谷 简单来说就是求 \([l,r]\) 这些点都存在的情况下,连通块的数量,看到七秒时限,而且每个点相连的边数很少,可以想到离线下来使用莫队类的算法解决 连通块问题,一般可以考 ...

  6. Redis的Java客户端-Jedis

    Redis的Java客户端-Jedis 在Redis官网中提供了各种语言的客户端,地址:https://redis.io/docs/clients/ 其中Java客户端也包含很多: 标记为的就是推荐使 ...

  7. JAVA生成随机数工具类RandomStringUtils详解

    public static String random(int count, boolean letters, boolean numbers) /** * count 创建一个随机字符串,其长度是指 ...

  8. 快速上手typescript(进阶篇)

    壹 ❀ 引 我们在快速上手typescript(基础篇)一文中,已经介绍了typescript大部分基础知识,文章结尾也提到这些知识点已足以支撑日常typescript开发,而本文算是对于前文知识点的 ...

  9. NC14685 加边的无向图

    题目链接 题目 题目描述 给你一个 n 个点,m 条边的无向图,求至少要在这个的基础上加多少条无向边使得任意两个点可达~ 输入描述 第一行两个正整数 n 和 m . 接下来的m行中,每行两个正整数 i ...

  10. NC17193 简单瞎搞题

    题目链接 题目 题目描述 一共有 n个数,第 i 个数是 xi xi 可以取 [li , ri] 中任意的一个值. 设 \(S = \sum{{x_i}^2}\) ,求 S 种类数. 输入描述 第一行 ...