前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >学习滚动插件iScroll的简单使用

学习滚动插件iScroll的简单使用

作者头像
玖柒的小窝
修改2021-10-22 14:47:18
2.8K0
修改2021-10-22 14:47:18
举报
文章被收录于专栏:各类技术文章~各类技术文章~

iScroll介绍

iScroll是一个高性能,资源占用少,无依赖,跨平台的javascript上拉加载,下拉刷新的滚动插件,目前版本v5.2.0。

GitHub下载地址:https://github.com/cubiq/iscroll

iScroll版本

iScroll进行了不同的优化,为了达到更高的性能,iScroll分为了多个版本,你可以根据项目选择最适合的版本。

目前有以下版本:

  • iscroll.js,这个版本是常规应用的脚本。它包含大多数常用的功能,有很高的性能和很小的体积。
  • iscroll-lite.js,精简版本。它不支持快速跳跃,滚动条,鼠标滚轮,快捷键绑定。但如果你所需要的是滚动(特别是在移动平台) iScroll 精简版 是又小又快的解决方案(这个能应付大多数场景)。
  • iscroll-probe.js,探查当前滚动位置是一个要求很高的任务,这就是为什么我决定建立一个专门的版本。如果你需要知道滚动位置在任何给定的时间,这是iScroll给你的。(我正在做更多的测试,这可能最终在常规iscroll.js脚本,请留意)。
  • iscroll-zoom.js,在标准滚动功能上增加缩放功能。
  • iscroll-infinite.js,可以做无限缓存的滚动。处理很长的列表的元素为移动设备并非易事。 iScroll infinite版本使用缓存机制,允许你滚动一个潜在的无限数量的元素。

iScroll使用

页面引用

<script type="text/javascript" src="iscroll.js"></script>

HTML结构

<div id="wrapper">
    <ul>
        <li>...</li>
        <li>...</li>
        ......
        <li>...</li>
    </ul>
</div>

初始化脚本

<script type="text/javascript">
    var myScroll = new IScroll('#wrapper');
</script>

配置参数说明

var myScroll = new IScroll('#wrapper', {
    mouseWheel: true, //是否监听鼠标滚轮事件
    scrollbars: true,      //是否显示默认滚动条
    preventDefault: true,//是否屏蔽默认事件
    preventDefaultException:{tagName:/^(INPUT|TEXTAREA|BUTTON|SELECT)$/ }, //列出哪些元素不屏蔽默认事件
    probeType: 3,//需要使用 iscroll-probe.js 才能生效 probeType : 1   滚动不繁忙的时候触发;probeType : 2   滚动时每隔一定时间触;probeType : 3   每滚动一像素触发一次

});

iScroll属性方法

功能

方法名

说明

滚动

scrollTo(x, y, time, easing)

滚动到: x , y ,事件, easing方式x:inty:inttime:intEasing: quadratic | circular | back | bounce | elastic见 IScroll.utils.ease  对象例:myScroll.scrollTo(0, -100, 1000, IScroll.utils.ease.elastic);

滚动到相对于当前位置的某处

scrollBy(x, y, time, easing)

滚动到某个元素

scrollToElement(el, time, offsetX, offsetY, easing) ;el:为必须的参数;offsetX/offsetY :相对于 el 元素的位移。设为 true 即为屏幕中心

分割页面 snap

goToPage(x, y, time, easing)

根据 options.snap 分割页面,跳转到横向、纵向某页。 XY 可以同时生效。

next() prev()

上一页,下一页结合 options.snap使用

缩放

zoom(scale, x, y, time)

缩放容器Scale: 缩放因子

刷新

refresh()

刷新 IScroll

销毁

destroy()

销毁 IScroll ,节省资源

iScroll事件

beforeScrollStart

用户点击屏幕,但是还未初始化滚动前

scrollCancel

初始化滚动后又取消

scrollStart

开始滚动

scroll

滚动中

scrollEnd

滚动结束

flick

轻击屏幕左、右

zoomStart

开始缩放

zoomEnd

缩放结束

iScroll 可以处理用户进行移动交互的元素:滚动,缩放,平移,无限滚动,视差滚动,旋转等功能。

文章内容如果写的存在问题欢迎留言指出,让我们共同交流,共同探讨,共同进步~~~

文章如果对你有帮助,动动你的小手点个赞,鼓励一下,给我前行的动力。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档