我有一個iOS web應用程序,在滾動方面證明是非常困難的!我已經解決這個問題的關鍵是iScroll 4.然而,當我從屏幕上移開手指時,滾動部分似乎又回到原來的位置。iScroll在觸摸事件結束時返回頂部
任何人有任何想法,爲什麼這可能是如何解決它?
腳本:
<script>
var myScroll;
function loaded() {
myScroll = new iScroll('wrapper');
}
document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);
/* * * * * * * *
*
* Use this for high compatibility (iDevice + Android)
*
*/
document.addEventListener('DOMContentLoaded', function() { setTimeout(loaded, 200); }, false)
</script>
的HTML:
<div id="wrapper"
style="position:absolute;
width:600px;
overflow:auto;
height: 500px;">
<div id="scroll-content"
style="position:absolute;
width:600px;
padding:0;
height: 500px;">
// The text that needs to be scrolled
</div>
</div>
UPDATE: 下面指出怪異的行爲,如橡膠帶效應應通過改變iScroll被裝載的方式被固定。我已經按照說明改變了加載方式,但是當我放開時,仍然會將橡膠帶綁定到滾動區域。
有時候,DOMContentLoaded有點草率,當 內容沒有準備好時會被解僱。如果你陷入一些奇怪的行爲(例如: 橡皮筋效應),請嘗試以下操作:
<script type="application/javascript" src="iscroll.js"></script>
<script type="text/javascript"> var myScroll; function loaded() {
setTimeout(function() { myScroll = new iScroll('wrapper'); },
100); } window.addEventListener('load', loaded, false); </script>