jquery scrollLeft无法在Android上运行

时间:2012-09-28 14:23:04

标签: android jquery scroll overflow

以下代码无法在Android浏览器中使用!

我该如何解决?

<input id="sannn" type="button" value="SAN" />
<div id="sann" style="width:640px; height:200px; overflow:scroll; border:solid 1px red;">
    <div style="border:solid 1px green; width:3000px; height:200px;">4545</div>
</div>

$('#sannn').bind('click', function () {
    $('#sann').scrollLeft(10);
});

2 个答案:

答案 0 :(得分:3)

看起来它是Android浏览器4.0.3 +

中的错误

http://code.google.com/p/android/issues/detail?id=38505&thanks=38505&ts=1350315570

问题38505:DOM元素scrollLeft setter在Android Browser 4.0.3 +

中不起作用

将div包装器定位为相对,隐藏溢出和特定的宽度和高度。在内部div(要移动的div)上使用position absolute,并通过jQuery使用内联样式左侧位置。

如果你真的需要滚动条。 Jquery UI滑块可能有所帮助:http://jqueryui.com/slider/

答案 1 :(得分:0)

我遇到了与Zepto.js相同的问题。我能够通过首先禁用滚动元素上的 overflow:scroll 来解决此问题,如下所示:

$("#element-to-scroll").css({'overflow': 'hidden'}).scrollLeftTo(newXPos, 250).css({'overflow': 'scroll');