IScroll5 中文API參數(shù)說明和調(diào)用方法
官網(wǎng):http://iscrolljs.com/
IScroll最簡單的DOM結(jié)構(gòu):
<div id="wrapper"> <ul> <li>...</li> <li>...</li> ... </ul> </div>
初始化iscroll
var myScroll = new IScroll('#wrapper',options);
初始化設(shè)置
初始化設(shè)置使用實(shí)例:
var myScroll = new IScroll('#wrapper', { mouseWheel: true, scrollbars: true });
設(shè)置列表:
所屬 |
屬性名 |
說明 |
默認(rèn)值 |
---|---|---|---|
核心庫 croe |
options.useTransform |
是否使用CSS3的Transform屬性 |
true |
options.useTransition |
是否使用CSS3的Transition屬性,否則使用requestAnimationFram代替 |
true |
|
options.HWCompositing |
是否啟用硬件加速 |
true |
|
options.bounce |
是否啟用彈力動(dòng)畫效果,關(guān)掉可以加速 |
true |
|
基礎(chǔ)特性 Basic features |
options.click |
是否啟用click事件。建議關(guān)閉此選項(xiàng)并啟用自定義的tap事件(options.tap) |
false |
options.disableMouse |
是否關(guān)閉鼠標(biāo)事件探測(cè)。如知道運(yùn)行在哪個(gè)平臺(tái),可以開啟它來加速。 |
false |
|
options.disablePointer |
是否關(guān)閉指針事件探測(cè)。如知道運(yùn)行在哪個(gè)平臺(tái),可以開啟它來加速。 |
false |
|
options.disableTouch |
是否關(guān)閉觸摸事件探測(cè)。如知道運(yùn)行在哪個(gè)平臺(tái),可以開啟它來加速。 |
false |
|
options.eventPassthrough |
使用IScroll的橫軸滾動(dòng)時(shí),如想使用系統(tǒng)立軸滾動(dòng)并在橫軸上生效,請(qǐng)開啟。 |
false |
|
options.freeScroll |
主要在上下左右滾動(dòng)都生效時(shí)使用,可以向任意方向滾動(dòng)。 |
false |
|
options.keyBindings |
綁定按鍵事件。 |
false |
|
options.invertWheelDirection |
反向鼠標(biāo)滾輪。 |
false |
|
options.momentum |
是否開啟動(dòng)量動(dòng)畫,關(guān)閉可以提升效率。 |
true |
|
options.mouseWheel |
是否監(jiān)聽鼠標(biāo)滾輪事件。 |
false |
|
options.preventDefault |
是否屏蔽默認(rèn)事件。 |
true |
|
options.scrollbars |
是否顯示默認(rèn)滾動(dòng)條 |
false |
|
options.scrollX options.scrollY |
可以設(shè)置是否顯示橫向或縱向滾動(dòng)條 |
scrollX false scrollY true |
|
options.tap |
是否啟用自定義的tap事件 可以自定義tap事件名 |
false |
|
滾動(dòng)條 Scrollbars |
options.scrollbars |
是否顯示默認(rèn)滾動(dòng)條 |
false |
options.fadeScrollbars |
是否漸隱滾動(dòng)條,關(guān)掉可以加速 |
true |
|
options.interactiveScrollbars |
用戶是否可以拖動(dòng)滾動(dòng)條 |
false |
|
options.resizeScrollbars |
是否固定滾動(dòng)條大小,建議自定義滾動(dòng)條時(shí)可開啟。 |
false |
|
options.shrinkScrollbars |
滾動(dòng)超出滾動(dòng)邊界時(shí),是否收縮滾動(dòng)條。 ‘clip':裁剪超出的滾動(dòng)條 ‘scale':按比例的收縮滾動(dòng)條(占用CPU資源) false:不收縮, |
false |
|
options.indicators |
指示IScroll該如何滾動(dòng),Scrollbars的底層實(shí)現(xiàn)方式。 |
||
options.indicators.el |
制定滾動(dòng)條的容器。容器中的第一個(gè)元素即為指示器。 例如: indicators: { el: document.getElementById('indicator') } indicators: { el: '#indicator' } |
||
options.indicators.ignoreBoundaries |
是否忽略容器邊界。設(shè)為true 可以設(shè)置滾動(dòng)速度 |
false |
|
options.indicators.listenX options.indicators.listenY |
指示器監(jiān)聽那個(gè)方向的滾動(dòng),可以設(shè)置為一個(gè)方向或2個(gè)方向 |
true |
|
options.indicators.speedRatioX options.indicators.speedRatioY |
指示器相對(duì)主滾動(dòng)條的速度 |
0 |
|
options.indicators.fade options.indicators.interactive options.indicators.resize options.indicators.shrink |
如scrollbars的設(shè)置 |
||
options.probeType |
需要使用iscroll-probe.js才能生效 probeType:1 滾動(dòng)不繁忙的時(shí)候觸發(fā) probeType:2 滾動(dòng)時(shí)每隔一定時(shí)間觸發(fā) probeType:3 每滾動(dòng)一像素觸發(fā)一次 |
||
分割頁面snap |
options.snap |
自動(dòng)分割容器,用于制作走馬燈效果等。 Options.snap:true//根據(jù)容器尺寸自動(dòng)分割 Options.snap:el//根據(jù)元素分割 |
false |
縮放 zoom |
options.zoom |
是否打開縮放 最好使用iscroll-zoom.js 如放大模糊,可將源容器定義為2倍大小,然后scale(0.5) |
false |
options.zoomMax |
最大縮放等級(jí) |
4 |
|
options.zoomMin |
最小縮放等級(jí) |
1 |
|
options.startZoom |
初始縮放等級(jí) |
1 |
|
options.wheelAction |
滾輪動(dòng)作 設(shè)為'zoom',可以用滾輪縮放 |
undefined |
|
更多設(shè)置 |
options.bindToWrapper |
光標(biāo)、觸摸超出容器時(shí),是否停止?jié)L動(dòng) |
false |
options.bounceEasing |
彈力動(dòng)畫效果 預(yù)置效果:'quadratic', 'circular', 'back', 'bounce', 'elastic'(最后兩個(gè)不能通過css3表現(xiàn)) 還可以自定義效果 bounceEasing: { style: 'cubic-bezier(0,0,1,1)',//css3時(shí) fn: function (k) { return k; }//不使用css3,使用requestAnimationFrame時(shí) } |
'circular' |
|
options.bounceTime |
彈力動(dòng)畫持續(xù)的毫秒數(shù) |
600 |
|
options.deceleration |
滾動(dòng)動(dòng)量減速 越大越快,建議不大于0.01 |
0.0006 |
|
options.mouseWheelSpeed |
鼠標(biāo)滾輪速度 |
||
options.preventDefaultException |
列出哪些元素不屏蔽默認(rèn)事件; |
{tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT)$/ } |
|
options.resizePolling |
重新調(diào)整窗口大小時(shí),重新計(jì)算IScroll的時(shí)間間隔 |
60 |
|
鍵位綁定 |
options.keyBindings |
監(jiān)聽按鍵事件控制IScroll 例如: keyBindings: { pageUp: 33, pageDown: 34, end: 35, home: 36, left: 37, up: 38, right: 39, down: 40 } |
|
IScroll5的API:
所屬 |
方法名 |
說明 |
---|---|---|
滾動(dòng) |
scrollTo(x, y, time, easing) |
滾動(dòng)到:x,y,事件,easing方式 x:int y:int time:int Easing: quadratic | circular | back | bounce | elastic 見IScroll.utils.ease 對(duì)象 例: myScroll.scrollTo(0, -100, 1000, IScroll.utils.ease.elastic); |
scrollBy(x, y, time, easing) |
滾動(dòng)到相對(duì)于當(dāng)前位置的某處 其余同上 |
|
scrollToElement(el, time, offsetX, offsetY, easing) |
滾動(dòng)到某個(gè)元素。el為必須的參數(shù) offsetX/offsetY:相對(duì)于el元素的位移。設(shè)為true即為屏幕中心 |
|
分割頁面snap |
goToPage(x, y, time, easing) |
根據(jù)options.snap分割頁面,跳轉(zhuǎn)到橫向、縱向某頁。XY可以同時(shí)生效。 結(jié)合options.snap使用 |
next() prev() |
上一頁,下一頁 結(jié)合options.snap使用 |
|
縮放 |
zoom(scale, x, y, time) |
縮放容器 Scale:縮放因子 |
刷新 |
refresh() |
刷新IScroll |
銷毀 |
destroy() |
銷毀IScroll,節(jié)省資源 |
IScroll的事件:
beforeScrollStart |
用戶點(diǎn)擊屏幕,但是還未初始化滾動(dòng)前 |
---|---|
scrollCancel |
初始化滾動(dòng)后又取消 |
scrollStart |
開始滾動(dòng) |
scroll |
滾動(dòng)中 |
scrollEnd |
滾動(dòng)結(jié)束 |
flick |
輕擊屏幕左、右 |
zoomStart |
開始縮放 |
zoomEnd |
縮放結(jié)束 |
事件使用實(shí)例:
myScroll = new IScroll('#wrapper'); myScroll.on('scrollEnd', doSomething);
IScroll的屬性:
myScroll.x/y |
當(dāng)前位置 |
---|---|
myScroll.directionX/Y |
上一次的滾動(dòng)方向(-1 下/右, 0 保持原狀, 1 上/左) |
myScroll.currentPage |
當(dāng)前Snap信息 |
myScroll.maxScrollXmyScroll.maxScrollY |
當(dāng)滾動(dòng)到底部時(shí)的 myScroll.x/y |
- JQuery插件iScroll實(shí)現(xiàn)下拉刷新,滾動(dòng)翻頁特效
- iScroll中事件點(diǎn)擊觸發(fā)兩次解決方案
- iscroll.js的上拉下拉刷新時(shí)無法回彈的解決方法
- 學(xué)習(xí)使用jquery iScroll.js移動(dòng)端滾動(dòng)條插件
- 基于HTML5上使用iScroll實(shí)現(xiàn)下拉刷新,上拉加載更多
- iScroll.js 使用方法參考
- jQuery iScroll.js 移動(dòng)端滾動(dòng)條美化插件
- 基于iscroll.js實(shí)現(xiàn)下拉刷新和上拉加載效果
- iscroll碰到Select無法選擇下拉刷新的解決辦法
- 利用iscroll4實(shí)現(xiàn)輪播圖效果實(shí)例代碼
相關(guān)文章
JS實(shí)現(xiàn)瀏覽器狀態(tài)欄文字閃爍效果的方法
這篇文章主要介紹了JS實(shí)現(xiàn)瀏覽器狀態(tài)欄文字閃爍效果的方法,通過時(shí)間函數(shù)定時(shí)觸發(fā)遞歸調(diào)用實(shí)現(xiàn)狀態(tài)欄文字閃爍效果,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10Javascript中定義方法的另類寫法(批量定義js對(duì)象的方法)
用了很多的Javascript框架,偶爾也會(huì)去看一下框架的源碼,經(jīng)常會(huì)看到這樣的代碼。2011-02-02node.js chat程序如何實(shí)現(xiàn)Ajax long-polling長鏈接刷新模式
node.js chat是node.js作者用JS寫的一個(gè)多人聊天工具, 源代碼公開下載,網(wǎng)址是chat.nodejs.org。作者用這個(gè)小例子,來展示如何用nodejs開發(fā)高效率的應(yīng)用程序。對(duì)于nodejs的學(xué)習(xí)者來說,是一個(gè)很好的例子2012-03-03js 限制數(shù)字 js限制輸入實(shí)現(xiàn)代碼
在工作中經(jīng)常會(huì)遇到j(luò)s限制輸入方面的要求,本文將詳細(xì)介紹其實(shí)現(xiàn)原理,需要的朋友可以參考下2012-12-12uni-app分包項(xiàng)目實(shí)戰(zhàn)總結(jié)
在使用uniapp開發(fā)過程中,隨著我們的代碼工程越來越大,必然會(huì)面臨一個(gè)問題,就是打出來的包會(huì)越來越大,下面這篇文章主要給大家介紹了關(guān)于uni-app分包項(xiàng)目實(shí)戰(zhàn)的相關(guān)資料,需要的朋友可以參考下2022-04-04超全面的JavaScript開發(fā)規(guī)范(推薦)
作為一名開發(fā)人員(WEB前端JavaScript開發(fā)),不規(guī)范的開發(fā)不僅使日后代碼維護(hù)變的困難,同時(shí)也不利于團(tuán)隊(duì)的合作,通常還會(huì)帶來代碼安全以及執(zhí)行效率上的問題。本文就主要介紹了關(guān)于Javascript的命名規(guī)范、注釋規(guī)范以及框架開發(fā)的一些問題,需要的朋友可以參考學(xué)習(xí)。2017-01-01