基于iScroll實(shí)現(xiàn)內(nèi)容滾動(dòng)效果
一、iScroll簡(jiǎn)介
iScroll 是一款針對(duì)web app使用的滾動(dòng)控件,它可以模擬原生IOS應(yīng)用里的滾動(dòng)列表操作,還可以實(shí)現(xiàn)縮放、拉動(dòng)刷新、精確捕捉元素、自定義滾動(dòng)條等功能。這里博主使用的版本iScroll4.25,目前最新版本是iScroll5,大家可以去官網(wǎng)下載。
官網(wǎng)地址:http://iscrolljs.com/
二、iScroll使用方法
1.iScroll使用結(jié)構(gòu)
最優(yōu)化使用iScroll的結(jié)構(gòu)一般如下所示:
HTML:
<div id="wrapper">
<div id="scroller">
<ul>
<li></li>
...
</ul>
<ul>
<li></li>
...
</ul>
</div>
</div>
注:1、iScroll一定要與滾動(dòng)內(nèi)容外面的wrapper進(jìn)行聯(lián)系才會(huì)產(chǎn)生效果。
2、只有wrapper里的第一個(gè)子元素才可以滾動(dòng)。
2、實(shí)例化iScroll
iScroll必須在調(diào)用之前實(shí)例化,實(shí)例化代碼如下(在head標(biāo)簽中添加如下代碼):
<script src="iscroll.js"></script>
<script>
var myscroll;//myscroll是全局變量,可以任意地方調(diào)用
function loaded(){
myscroll = new iScroll("wrapper");
}
window.addEventListener("DOMContentLoaded",loaded,false);
</script>
三、滾動(dòng)測(cè)試實(shí)例
HTML+CSS:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<script src="iscroll-4.2.5fix.js"></script><!--引入js包-->
<!--實(shí)例化iScroll-->
<script type="text/javascript">
var myscroll;
function loaded(){
myscroll = new iScroll("wrapper");
}
window.addEventListener("DOMContentLoaded",loaded,false);
</script>
<!--CSS樣式設(shè)置-->
#wrapper {
position:absolute; z-index:1;
top:45px; bottom:48px; left:0;
width:100%;
background:#aaa;
overflow:auto;
}
#scroller {
position:relative;
/* -webkit-touch-callout:none;*/
-webkit-tap-highlight-color:rgba(0,0,0,0);
float:left;
width:100%;
padding:0;
}
#scroller ul {
position:relative;
list-style:none;
padding:0;
margin:0;
width:100%;
text-align:left;
}
#scroller li {
padding:0 10px;
height:40px;
line-height:40px;
border-bottom:1px solid #ccc;
border-top:1px solid #fff;
background-color:#fafafa;
font-size:14px;
}
#scroller li > a {
display:block;
}
</style>
<title>滾動(dòng)測(cè)試</title>
</head>
<body>
<div id="wrapper">
<div id="scroller">
<ul id="thelist">
<li>Pretty row 1</li>
<li id="aaa">Pretty row 2</li>
<li>Pretty row 3</li>
<li>Pretty row 4</li>
<li>Pretty row 5</li>
<li>Pretty row 6</li>
<li>Pretty row 7</li>
<li>Pretty row 8</li>
<li>Pretty row 9</li>
<li>Pretty row 10</li>
<li>Pretty row 11</li>
<li>Pretty row 12</li>
<li>Pretty row 13</li>
<li>Pretty row 14</li>
<li>Pretty row 15</li>
<li>Pretty row 16</li>
<li>Pretty row 17</li>
<li>Pretty row 18</li>
</ul>
</div>
</div>
</body>
</html>
四、運(yùn)行效果

博主剛開始學(xué)習(xí),局部?jī)?nèi)容滾動(dòng)這只是iScroll最基本的功能,接下來(lái)博主會(huì)嘗試?yán)瓌?dòng)刷新等功能。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
僅一個(gè)form表單 js實(shí)現(xiàn)注冊(cè)信息依次填寫提交功能
這篇文章主要為大家詳細(xì)介紹了僅一個(gè)form表單,JavaScript可實(shí)現(xiàn)注冊(cè)信息依次填寫提交功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-06
JS實(shí)現(xiàn)程序暫停與繼續(xù)功能代碼解讀
程序暫停與繼續(xù)的實(shí)現(xiàn)方法有很多,在本文為大家介紹下js中是如果做到的,并對(duì)具體的功能代碼進(jìn)行注釋說(shuō)明,感興趣的朋友不要錯(cuò)過(guò)2013-10-10
微信小程序?qū)崿F(xiàn)獲取手機(jī)號(hào)60s倒計(jì)時(shí)
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)獲取手機(jī)號(hào)60s倒計(jì)時(shí),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07
用js提交表單解決一個(gè)頁(yè)面有多個(gè)提交按鈕的問(wèn)題
這篇文章主要介紹了用js提交表單解決一個(gè)頁(yè)面有多個(gè)提交按鈕的問(wèn)題,主要是判斷是否為提交文本,然后再執(zhí)行相應(yīng)的動(dòng)作,需要的朋友可以參考下2014-09-09
dateformat.js超輕量級(jí)的JS日期處理庫(kù)的使用
dateformat.js 是一個(gè)非常簡(jiǎn)潔、輕量級(jí)、不到 5kb 的很簡(jiǎn)潔的 Javascript 庫(kù),本文主要介紹了dateformat.js超輕量級(jí)的JS日期處理庫(kù)的使用,感興趣的可以了解一下2023-12-12
Electron無(wú)邊框自定義窗口拖動(dòng)的問(wèn)題小結(jié)
最近使用了electron框架,發(fā)現(xiàn)如果自定義拖動(dòng)是比較實(shí)用的;特別是定制化比較高的項(xiàng)目,如果單純的使用-webkit-app-region:?drag;會(huì)讓鼠標(biāo)事件無(wú)法觸發(fā),這篇文章主要介紹了Electron無(wú)邊框自定義窗口拖動(dòng)的問(wèn)題小結(jié),需要的朋友可以參考下2024-04-04

