2010-08-13 32 views
5

我的代碼:如何讓內容在Iphone的safari或android的webkit上的DIV中動態滾動?

for(var myLine = 0; myLine < 100; myLine++) 
     document.getElementById("myDiv").innerHTML += "line " + myLine + "<br>"; 


............... 

<div style="position:...etc; overflow:auto;" id="myDiv"></div> 

這個工程不會對所有非移動平臺在每個瀏覽器毛刺。然而......當這是在iPhone(Safari)或Android(webkit)上實現時,div會被文本填滿,但當文本超過div的高度並且用戶無法「推送」時,不會生成滾動條內容也下降了。所以無論如何,有效溢出總是「隱藏」的。

我很好奇,如果有一些替代方法,我忽略或如果這只是一個錯誤,我現在沒有辦法解決。

回答

1

實際上,iOS的行爲是正確的。用戶必須使用兩根手指來滾動不是整個頁面的頁面上的任何滾動區域。 (否則瀏覽器如何知道用戶是否意圖滾動div或它的容器,當他們都在非優化頁面上填充屏幕時)。

解決'功能'的最佳方法是實現一個觸摸事件處理程序,在用戶觸摸時移動div。一個很好的例子是蘋果的FingerTips示例代碼。

當您在iPad上瀏覽Safari Developer Library時,Apple使用此確切技術。

0

我認爲這個問題是在設置innerHTML,這裏是類似的post

在dom加載並準備好之後,iPhone上調用該函數嗎?

相關問題