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.pswp.cn/news/254714.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/254714.shtml
英文地址,請注明出處:http://en.pswp.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;第…