2012-09-28 94 views
4

下面的代碼在Android瀏覽器中不起作用!jquery scrollLeft不能在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); 
}); 

回答

3

看起來它是在Android瀏覽器中的錯誤4.0.3+

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

問題38505:DOM元素scrollLeft二傳手不會Android瀏覽器工作4.0.3+

將div包裝器定位爲相對於隱藏的溢出以及特定的寬度和高度。在內部div(您想要移動的div)上使用絕對位置,並通過jQuery使用內聯樣式左側位置進行播放。

如果你確實需要滾動條。 Jquery UI滑塊可能有幫助:http://jqueryui.com/slider/

0

我遇到了與Zepto.js相同的問題。我能夠通過首先禁用溢出來解決此問題:在滾動元素上滾動,如下所示:

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