亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

學習使用jquery iScroll.js移動端滾動條插件

2019-11-20 10:30:18
字體:
來源:轉載
供稿:網友

大家在日常工作中最常用的插件是什么,jQurey?Lazyload?但是這些都是在PC端,但是在移動端最常用的插件莫過于iScroll了,iScroll到底是什么東西,應該怎么用?iScroll是個很強大的插件,我也只是略懂皮毛,這里我們簡單的介紹一下。
iScroll的產生:

iScroll的產生完全是因為移動版webkit瀏覽器,例如在iPhone,Android 的移動設備上。
iScroll的使用方法:

iScroll的原理是外層有一個溢出隱藏(overflow:hidden;)的DOM,然后這個區域內的第一個DOM結構會被實例化,其包裹的內容可以縱向或者橫向的滾動,所以在使用iScroll的時候,滾動元素要盡量的簡單,減少DOM個數,減少嵌套,因為DOM結構越是復雜iScroll運行起來就越是吃力,有可能會造成某些節點顯示不正常的情況。 所以,推薦使用的DOM結構如下:

<div id="wrapper">//overflow:hidden; <ul> //只有第一個DOM結構(ul)被實例化,這個DOM可以縱向或者橫向的滾動, //多出的內容會被wrapper的樣式hidden。  <li>1</li>  <li>2</li>  <li>3</li> </ul></div>

注意:再次重申,只有wrapper里的第一個子元素(ul)才可以被實例化滾動,并且要結合外層的DOM(wrapper)才能實現滾動。
如果 wrapper中有多個ul怎么辦?很簡單,記住那句話,只有wrapper里的第一個子元素(ul)才可以被實例化滾動:

<div id="wrapper">//overflow:hidden; <div id="first">  //只有第一個DOM結構(ul)被實例化,這個DOM可以縱向或者橫向的滾動,  //多出的內容會被wrapper的樣式hidden  <ul>   <li>1</li>   <li>2</li>   <li>3</li>  </ul>  <ul>   <li>4</li>   <li>5</li>   <li>6</li>  </ul> </div></div>

看到了吧,只有first會被實例化。 注意:這里第一個DOM結構的ID(first)可以不寫,我只是為了方便大家識別才寫了個ID,但是最外層的ID(wrapper)一定要寫,因為在JS實例化的時候需要填寫這個ID:

var myScroll = new iScroll("wrapper");

iScroll應該如何實例化

既然說道了實例化,我們應該在什么時候實例化?據說實例化的方法有很多,但是我沒用過,我只說一種:
(1)在HTML(uw3c.html)頁面底部(body之后html之前)加載iscroll.js與當前頁面的uw3c.js,這樣能確保HTML的DOM結構能加載出來。
(2)在JS插入頁面DOM結構和數據之前實例化iScroll,也就是在JS的最開始實例化,因為之后可能會使用JS來插入DOM或者數據,這樣以來能確保在插入數據之前iScroll已經實例化了。

HTML://HTML結構

<html > <body>  ...code... </body>  //插入iscroll.js文件 <script type="text/javascript" src="js/iscroll.js" > </script > //插入本頁面JS文件 <script type="text/javascript" src="js/uw3c.js" > </script ></html>

 JS://JS文件內容

var myscroll; function iscroll(data){  //實例化iScroll  myscroll=new iScroll("wrapper");  pageData(data); } function pageData(obj){  $("body").html(obj);  myscroll.refresh();//當DOM結構發生變化的時候,需要刷新iScroll } iscroll("<div>pagedata</div>");

iScroll中的參數:

在實例化iScroll的時候,可以傳入兩個參數,第一個參數是實例化的外層的DOM的ID,第二個參數是iScroll執行方法的對象:

var myscroll=new iScroll("wrapper",{hScrollbar:false});或者var opts = {    vScroll:false,//禁止垂直滾動    snap:true,//執行傳送帶效果    hScrollbar:false//隱藏水平方向上的滾動條   };var myscroll = new iScroll("wrapper",opts);

第二個參數內容如下,這個參數會控制iScroll的效果:

hScroll  false 禁止橫向滾動 true橫向滾動 默認為truevScroll  false 禁止垂直滾動 true垂直滾動 默認為truehScrollbar  false隱藏水平方向上的滾動條vScrollbar  false 隱藏垂直方向上的滾動條fadeScrollbar false 指定在無漸隱效果時隱藏滾動條hideScrollbar 在沒有用戶交互時隱藏滾動條 默認為truebounce   啟用或禁用邊界的反彈,默認為truemomentum  啟用或禁用慣性,默認為true,此參數在你想要保存資源的時候非常有用lockDirection false取消拖動方向的鎖定,true拖動只能在一個方向上(up/down 或者left/right)

iScroll中的方法:

當然在第二個參數中,也有一些方法可以執行:
(1)scrollTo(x, y, time, relative)方法:傳入4個參數:X軸滾動距離,Y軸滾動距離,效果時間,是否相對當前位置。所以例如:

//在200毫秒的時間內,Y軸向上滾動100像素;uw3c.scrollTo(0, -100, 200)//在200毫秒的時間內,相對于當前位置,X軸向左滾動100像素;uw3c.scrollTo(-100, 0, 200, true)

(2)refresh()方法:在DOM結構發生改變之后,需要刷新iScroll,否則滾動插件會實例化的不準確:

uw3c.refresh();//刷新iScroll

(3)onPosChange,有沒有一個方法能返回位置的變化?你可以查詢一下自己所用的iScroll中有沒有onPosChange方法:

onPosChange:function(x,y){ if(y < -200){  //如果Y周向上滾動200像素,$("#uw3c")就顯示,否則就隱藏。  $("#uw3c").show(); }else{  $("#uw3c").hide(); }}

(4)onScrollEnd:滾動結束時執行的事件,如果想在滾動結束時出發摸個事件,這個方法就拍上用處了:

//滾動結束后,執行的方法,滾動后會出現提示框alert("uw3c.com")onScrollEnd:function(){ alert("uw3c.com");}

(5)onRefresh:在DOM結構發生改變之后,需要刷新iScroll,否則滾動插件會實例化的不準確,onRefresh是刷新完iScroll會執行的方法。
(6)onBeforeScrollStart:開始滾動前的時間回調,默認是阻止瀏覽器默認行為 。
(7)onScrollStart:開始滾動的回調。
(8)onBeforeScrollMove:在內容移動前的回調。
(9)onScrollMove:內容移動的回調。
(10)onBeforeScrollEnd:在滾動結束前的回調。
(11)onTouchEnd:手離開屏幕后的回調。
(12)onDestroy:銷毀實例的回調。

以上就是本文的全部內容,希望對大家熟練使用iScroll.js移動端滾動條插件有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品电影一区| 成人在线激情视频| 26uuu国产精品视频| 有码中文亚洲精品| 在线观看视频亚洲| 91精品国产自产在线老师啪| 国产精品美女午夜av| 国产一区二区三区在线看| 亚洲在线第一页| 国产成人精品在线| 日韩成人中文字幕| 97视频在线观看播放| 亚洲欧美日韩一区在线| 久久九九免费视频| 国产日韩欧美日韩| 国产精品网红直播| 一区二区三区天堂av| 国产精品狼人色视频一区| 国产精品av在线| 亚洲精品videossex少妇| 日韩欧美福利视频| www.久久久久久.com| 在线成人免费网站| 色爱精品视频一区| 成人av番号网| 成人免费看片视频| 国产成人jvid在线播放| 国产亚洲精品va在线观看| 国产日韩精品综合网站| 色久欧美在线视频观看| 高清一区二区三区四区五区| 色噜噜国产精品视频一区二区| 亚洲风情亚aⅴ在线发布| 国产精品吊钟奶在线| 亚洲xxxxx性| 久久艳片www.17c.com| 97激碰免费视频| 69**夜色精品国产69乱| 色婷婷成人综合| 中文字幕一区二区三区电影| 日韩国产中文字幕| 日韩精品视频在线观看免费| 91夜夜揉人人捏人人添红杏| 亚洲a区在线视频| 欧美性猛交99久久久久99按摩| 亚洲视频一区二区三区| 国产精品久久久久久久久久ktv| 久久影视电视剧免费网站| 欧美xxxx做受欧美.88| 精品亚洲国产成av人片传媒| 中文国产亚洲喷潮| 日韩av在线免费看| 日韩av网站导航| 亚洲成人精品视频在线观看| 日韩电影中文字幕av| 国产精品视频一| 中文字幕免费精品一区高清| 精品一区二区三区四区| 久久久久久九九九| 亚洲国产91精品在线观看| 久久躁狠狠躁夜夜爽| 92版电视剧仙鹤神针在线观看| 性色av一区二区三区| 久热在线中文字幕色999舞| 97视频免费在线看| 日韩av最新在线观看| 69av在线播放| 一区二区成人精品| 亚洲aⅴ男人的天堂在线观看| 中文字幕久久精品| 国产精品一区二区在线| 久久精品国产69国产精品亚洲| 国产成人久久久| 亚洲一区免费网站| 奇米4444一区二区三区| 亚洲日本中文字幕| 中文字幕在线观看亚洲| 综合国产在线观看| 丝袜一区二区三区| 亚洲午夜未满十八勿入免费观看全集| 日韩最新中文字幕电影免费看| 久久91亚洲精品中文字幕奶水| 一本色道久久综合狠狠躁篇怎么玩| 欧美国产日韩一区二区| 国产成人精品午夜| 久久影视电视剧免费网站清宫辞电视| 国内精品免费午夜毛片| 欧美日韩免费一区| 1769国产精品| 亚洲一区二区三区sesese| 欧美日韩不卡合集视频| 欧美一级大片视频| 亚洲国产中文字幕久久网| 成人免费视频网| 午夜精品视频在线| 亚洲在线视频观看| 懂色av一区二区三区| 亚洲午夜未删减在线观看| 欧亚精品中文字幕| 成人av在线亚洲| 亚洲国产一区二区三区四区| 日韩免费av片在线观看| 日韩一区二区三区在线播放| 97视频在线观看成人| 国产精品久久久久免费a∨| 欧美一级大胆视频| 亚洲国产精品推荐| 精品久久久中文| 亚洲国产另类 国产精品国产免费| 久久久久免费视频| 欧美色道久久88综合亚洲精品| 中文字幕亚洲字幕| 亚洲电影免费观看高清完整版在线观看| 宅男66日本亚洲欧美视频| 国产欧美中文字幕| 久久久久在线观看| 精品丝袜一区二区三区| 欧美福利视频在线| 国产在线观看精品| 91精品国产91久久久久| 亚洲成人精品久久久| 欧美激情一区二区三区成人| 2020欧美日韩在线视频| 欧美孕妇毛茸茸xxxx| 一区二区三区黄色| 久久精品成人欧美大片古装| 亚洲国产日韩欧美在线99| 国产女人18毛片水18精品| 亚洲成人激情在线| 日韩精品极品视频免费观看| 疯狂做受xxxx欧美肥白少妇| 中文字幕日韩视频| 日韩在线视频免费观看高清中文| 亚洲欧美日韩视频一区| 成人在线视频网| 国产成人在线一区| 欧美电影在线播放| 狠狠色狠狠色综合日日小说| 久久这里只有精品99| 亚洲精品aⅴ中文字幕乱码| 日产精品久久久一区二区福利| 亚洲新中文字幕| 国产美女久久精品| 亚洲午夜未删减在线观看| 欧美国产日韩xxxxx| 亚洲人成在线一二| 久久777国产线看观看精品| 精品中文字幕在线2019| 92裸体在线视频网站| 亚洲综合一区二区不卡| 亚洲最新中文字幕| 欧美巨猛xxxx猛交黑人97人| 国产精品视频永久免费播放| 伊人精品在线观看| 国产一区二中文字幕在线看| 欧日韩在线观看| 国产日韩av在线播放| 欧美日韩在线观看视频小说| 不卡在线观看电视剧完整版| 91九色蝌蚪国产| 欧美老妇交乱视频| 性色av一区二区三区| 欧美三级欧美成人高清www| 国产精品久久久久久中文字|