4

以下のコードは、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);
});
4

2 に答える 2

3

Android Browsers 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/

于 2012-11-21T18:24:42.710 に答える
0

Zepto.js で同じ問題に遭遇しました。最初にオーバーフローを無効にすることで、この問題を回避できました。次のように、スクロール要素をスクロールします。

$("#element-to-scroll").css({'overflow': 'hidden'}).scrollLeftTo(newXPos, 250).css({'overflow': 'scroll');
于 2013-03-29T18:56:17.133 に答える