代码之家  ›  专栏  ›  技术社区  ›  Yevgeny Simkin

如何让内容在Iphone的safari或android的webkit上的DIV中动态滚动?

  •  5
  • Yevgeny Simkin  · 技术社区  · 16 年前

    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的高度时不会生成滚动条,用户也不能“推”下内容。所以不管发生什么,溢出总是“隐藏”的。

    我很好奇,是否有一些替代方法,我忽略了,或者这只是一个错误,我没有办法得到周围的时刻。

    3 回复  |  直到 16 年前
        1
  •  3
  •   Peter Knego    15 年前

    这是移动webkit上的一个已知问题: http://www.quirksmode.org/webkit.html overflow

    解决办法是 iScroll

        2
  •  1
  •   David W. Keith    15 年前

    解决“feature”的最佳方法是实现一个touch事件处理程序,当用户触摸div时,它会将div向上移动。一个很好的例子就是苹果的 FingerTips 示例代码。

    Safari Developer Library

        3
  •  0
  •   Community Mohan Dere    9 年前

    我认为问题在于如何设置innerHTML,这里是类似的 post

    这个函数是在dom加载并准备好之后在iPhone上调用的吗?