IScroll5中文API整理,用法与参考

IScroll是移动页面上被使用的一款仿系统滚动插件。IScroll5相对于之前的IScroll4改进了许多,使得大家可以更方便的定制所需的功能了。

做项目的时候正好用到了这个插件,自己做了一下总结,发在这里方便大家学习IScroll5。

官网:http://iscrolljs.com/

IScroll最简单的DOM结构:

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

初始化iscroll

var myScroll = new IScroll('#wrapper',options);  

初始化设置

初始化设置使用实例:

var myScroll = new IScroll('#wrapper', {  mouseWheel: true,  scrollbars: true  
});  

设置列表:

所属

属性名

说明

默认值

核心库

croe

options.useTransform

是否使用CSS3的Transform属性

true

options.useTransition

是否使用CSS3的Transition属性,否则使用requestAnimationFram代替

true

options.HWCompositing

是否启用硬件加速

true

options.bounce

是否启用弹力动画效果,关掉可以加速

true

基础特性

Basic features

options.click

是否启用click事件。建议关闭此选项并启用自定义的tap事件(options.tap)

false

options.disableMouse

是否关闭鼠标事件探测。如知道运行在哪个平台,可以开启它来加速。

false

options.disablePointer

是否关闭指针事件探测。如知道运行在哪个平台,可以开启它来加速。

false

options.disableTouch

是否关闭触摸事件探测。如知道运行在哪个平台,可以开启它来加速。

false

options.eventPassthrough

使用IScroll的横轴滚动时,如想使用系统立轴滚动并在横轴上生效,请开启。

event passthrough demo

false

options.freeScroll

主要在上下左右滚动都生效时使用,可以向任意方向滚动。

2D scroll demo

false

options.keyBindings

绑定按键事件。

Key bindings 

false

options.invertWheelDirection

反向鼠标滚轮。

false

options.momentum

是否开启动量动画,关闭可以提升效率。

true

options.mouseWheel

是否监听鼠标滚轮事件。

false

options.preventDefault

是否屏蔽默认事件。

true

options.scrollbars

是否显示默认滚动条

false

options.scrollX

options.scrollY

可以设置是否显示横向或纵向滚动条

scrollX  false

scrollY  true

options.tap

是否启用自定义的tap事件

可以自定义tap事件名

false

滚动条

Scrollbars

options.scrollbars

是否显示默认滚动条

false

options.fadeScrollbars

是否渐隐滚动条,关掉可以加速

true

options.interactiveScrollbars

用户是否可以拖动滚动条

false

options.resizeScrollbars

是否固定滚动条大小,建议自定义滚动条时可开启。

false

options.shrinkScrollbars

滚动超出滚动边界时,是否收缩滚动条。

‘clip’:裁剪超出的滚动条

‘scale’:按比例的收缩滚动条(占用CPU资源)

false:不收缩,

false

 

options.indicators

指示IScroll该如何滚动,Scrollbars的底层实现方式。

 

options.indicators.el

制定滚动条的容器。容器中的第一个元素即为指示器。

例如:

indicators: {

    el: document.getElementById('indicator')

}

indicators: {

    el: '#indicator'

}

 

options.indicators.ignoreBoundaries

是否忽略容器边界。设为true 可以设置滚动速度

parallax demo

false

options.indicators.listenX

options.indicators.listenY

指示器监听那个方向的滚动,可以设置为一个方向或2个方向

true

options.indicators.speedRatioX

options.indicators.speedRatioY

指示器相对主滚动条的速度

0

options.indicators.fade

options.indicators.interactive

options.indicators.resize

options.indicators.shrink

如scrollbars的设置

minimap demo

 

options.probeType

需要使用iscroll-probe.js才能生效

probeType:1  滚动不繁忙的时候触发

probeType:2  滚动时每隔一定时间触发

probeType:3  每滚动一像素触发一次

 

分割页面snap

options.snap

自动分割容器,用于制作走马灯效果等。

Options.snap:true//根据容器尺寸自动分割

Options.snap:el//根据元素分割

false

缩放

zoom

options.zoom

是否打开缩放

最好使用iscroll-zoom.js

如放大模糊,可将源容器定义为2倍大小,然后scale(0.5)

zoom demo

false

options.zoomMax

最大缩放等级

4

options.zoomMin

最小缩放等级

1

options.startZoom

初始缩放等级

1

options.wheelAction

滚轮动作

设为’zoom’,可以用滚轮缩放

undefined

更多设置

options.bindToWrapper

光标、触摸超出容器时,是否停止滚动

false

options.bounceEasing

弹力动画效果

预置效果:'quadratic', 'circular', 'back', 'bounce', 'elastic'(最后两个不能通过css3表现)

还可以自定义效果

bounceEasing: {

    style: 'cubic-bezier(0,0,1,1)',//css3时

    fn: function (k) { return k; }//不使用css3,使用requestAnimationFrame时

}

'circular'

options.bounceTime

弹力动画持续的毫秒数

600

options.deceleration

滚动动量减速

越大越快,建议不大于0.01

0.0006

options.mouseWheelSpeed

鼠标滚轮速度

 

options.preventDefaultException

列出哪些元素不屏蔽默认事件;

{tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT)$/ }

options.resizePolling

重新调整窗口大小时,重新计算IScroll的时间间隔

60

键位绑定

options.keyBindings

监听按键事件控制IScroll

例如:

keyBindings: {

    pageUp: 33,

    pageDown: 34,

    end: 35,

    home: 36,

    left: 37,

    up: 38,

    right: 39,

    down: 40

}

 

 

   

 

IScroll5的API:

所属

方法名

说明

滚动

scrollTo(x, y, time, easing)

滚动到:x,y,事件,easing方式

x:int

y:int

time:int

Easing: 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即为屏幕中心

scroll to element

分割页面snap

goToPage(x, y, time, easing)

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

结合options.snap使用

next()

prev()

上一页,下一页

结合options.snap使用

缩放

zoom(scale, x, y, time)

缩放容器

Scale:缩放因子

刷新

refresh()

刷新IScroll

销毁

destroy()

销毁IScroll,节省资源

   

 

IScroll的事件

事件使用实例:

myScroll = new IScroll('#wrapper');  
myScroll.on('scrollEnd', doSomething);  

 

beforeScrollStart

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

scrollCancel

初始化滚动后又取消

scrollStart

开始滚动

scroll

滚动中

scrollEnd

滚动结束

flick

轻击屏幕左、右

zoomStart

开始缩放

zoomEnd

缩放结束

 

IScroll的属性

myScroll.x/y

当前位置

myScroll.directionX/Y

上一次的滚动方向(-1 下/右, 0 保持原状, 1 上/左)

myScroll.currentPage

当前Snap信息

myScroll.maxScrollXmyScroll.maxScrollY

当滚动到底部时的 myScroll.x/y

 

转载于:https://www.cnblogs.com/jiangxiaobo/p/5753410.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/254714.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 安装USB摄像头

sudo apt-get updatesudo apt-get install fswebcamsudo apt-get install mplayersudo apt-get install alsamixer安装完毕ls /dev查找设备是否有video0这个设备sudo mplayer tv:// 可以看到摄像内容转载于:https://www.cnblogs.com/smartkeke/p/6820426.html

struct x264_t 维护着CODEC的诸多重要信息

//x264_t结构体维护着CODEC的诸多重要信息struct x264_t{/* encoder parameters ( 编码器参数 )*/x264_param_t param;x264_t *thread[X264_SLICE_MAX];/* bitstream output ( 字节流输出 ) */struct{int i_nal;x264_nal_t nal[X264_NAL_MAX];int i_bitstr…

如何判断一条曲线是否自己相交?

今天看到群里有人在问这个问题&#xff0c;想了一个解决办法。 我们首先作假设&#xff0c;如果一条曲线有交点&#xff0c;那么它就是相交的对吧。可能大家想的都是这样&#xff0c;就开始找各种方法去识别交点。 我们换个角度想一下&#xff1a;是不是我们判断这条曲线是否带…

XML 与网络的数据传输

&#xfeff;&#xfeff;XML 与网络的数据传输

hdu 5813 Elegant Construction

水题 题意&#xff1a;有n个城市&#xff0c;给你每个城市能到达城市的数量&#xff0c;要你构图&#xff0c;输出有向边&#xff0c;要求无环&#xff0c;输出任意的解 例&#xff1a; Sample Input 332 1 021 143 1 1 0Sample OutputCase #1: Yes21 22 3Case #2: NoCase #3: …

Redis实战笔记

Redis 数据库 一、 概要 1. 特点 用于抽象数据类型的 DSL内存存储基础数据结构 API编码风格避免代码复杂两层 API以优化为乐2. 数据类型 键值对&#xff08;字符串->字符串&#xff09;哈希列表&#xff08;链表&#xff09;集合&#xff1a;差并交有序集合 列表 集合位图…

内存申请与一级二级指针

1.如果是函数内进行内存申请&#xff0c;很简单&#xff0c;标准用法就可以了&#xff1a; test(){int *array;array(int *)malloc(sizeof(int)*10);//申请10*4 bytes&#xff0c;即10个单位的int内存单元}注意&#xff0c;malloc使用简单&#xff0c;但是注意参数和返回值&…

halcon相机标定及图像矫正(代码)

侵删 1 halcon相机标定和图像矫正 对于相机采集的图片&#xff0c;会由于相机本身和透镜的影响产生形变&#xff0c;通常需要对相机进行标定&#xff0c;获取相机的内参或内外参&#xff0c;然后矫正其畸变。相机畸变主要分为径向畸变和切向畸变&#xff0c;其中径向畸变是由透…

找寻一个邮箱

import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern;public class zhengze {public static void main(String[] args) { //1.创建一个正则表达式对象Pattern pPattern.compile("[0-9]{6}"); //2.获得匹配器 String s…

先弄个XML解析器代码抄一抄 慢慢研究 O(∩_∩)O哈哈~

&#xfeff;&#xfeff;出处&#xff1a;http://bbs.csdn.net/topics/390229172 已经自我放逐好几年了.打算去上班得了.在最后的自由日子里,做点有意义的事吧... 先来下载地址 http://www.kuaipan.cn/file/id_12470514853353274.htm 已经在很多正式,非正式的场合…

紫书 例题8-10 UVa 714 (二分答案)

这道题让最大值最小&#xff0c; 显然是二分答案当题目求的是最大值最小&#xff0c; 最小值最大&#xff0c; 这个时候就要想到二分答案为什么可以二分答案呢&#xff0c; 因为这个时候解是单调性的&#xff0c; 如果简单粗暴一点就全部枚举一遍&#xff0c; 验证答案。但是因…

was not declared in this scope

“was not declared in this scope”是一个错误信息&#xff0c;在编译的时候会遇到。其含义为标识符在其出现的地方是未被定义的。 出现该错误的时候&#xff0c;会同时把未定义的变量名显示出来。比如如下程序&#xff1a; int main(){ printf("%d",i);//这个i是…

函数参数的传递问题(一级指针和二级指针)

函数参数的传递问题&#xff08;一级指针和二级指针&#xff09; [转]原以为自己对指针掌握了&#xff0c;却还是对这个问题不太明白。请教&#xff01; 程序1&#xff1a; void myMalloc(char *s) //我想在函数中分配内存,再返回 { s(char *) malloc(100); } void …

Win7下使用U盘安装linux Ubuntu16.04双系统图文教程

Win7下使用U盘安装linux Ubuntu16.04双系统图文教程 Ubuntu&#xff08;友帮拓、优般图、乌班图&#xff09;是一个以桌面应用为主的开源GNU/Linux操作系统&#xff0c;Ubuntu 是基于DebianGNU/Linux&#xff0c;支持x86、amd64&#xff08;即x64&#xff09;和ppc架构&#xf…

SynchronizationContext

SendOrPostCallback xxx vg > { Text "内部&#xff1a; "vg.ToString(); };dynamic vx new { a SynchronizationContext.Current, b xxx };Thread td new Thread(x >{dynamic tmp x;// SynchronizationContext ds x as SynchronizationContext;for (in…

CoDeSys的前世今生

&#xfeff;&#xfeff;工作以及网上看到不少人说&#xff0c;CoDeSys和西门子step7&#xff0c;在德国都属于标准过程&#xff0c;牛逼的小朋友都可以用其编程&#xff0c;不知真假&#xff0c;相信无风不起浪&#xff0c;多少有些依据&#xff0c;看看国內清一色的日系编程…

UVALive 7324 ASCII Addition (模拟)

ASCII Addition题目链接&#xff1a; http://acm.hust.edu.cn/vjudge/contest/127407#problem/A Description Nowadays, there are smartphone applications that instantly translate text and even solve math problems if you just point your phone’s camera at them. You…

Eclipse中执行Ant脚本出现Could not find the main class的问题及解

试过了&#xff1a;https://blog.csdn.net/bookroader/article/details/2300337 但是不管用&#xff0c;偶然看到这篇没有直接关系的 https://blog.csdn.net/jiuyueguang/article/details/9350753 联想了一下。项目是JDK1.5&#xff0c;Eclipse是JDK1.8启动&#xff0c;所以在R…

获得变量的名称获得传入参数的参数类型与堆栈中的函数名获得变量的名称

获得变量的名称 获得变量的名称函数 public static string GetVarName(Expression<Func<变量类型, 变量类型>> exp) public static string GetVarName_Int(Expression<Func<int, int>> exp){return ((MemberExpression)exp.Body).Member.Name;}使用时…

视频通话研究002

还是关于视频质量。经測试&#xff0c;在公网server使用SQCIF(128x98)进行视频通话。2个client都是这个设置&#xff0c;感觉不出马赛克&#xff0c;模糊严重&#xff0c;在一个手机client抓包&#xff0c;例如以下&#xff1a; 第1,2行是client发到server的数据&#xff1b;第…