2

iPhoneのサファリで要素がスクロールしないようにしようとしています。ここに記載されている解決策を試しました: iPhone Safari: html コンテナー内のリストをスクロールする しかし、私のリストは大きく、スムーズに動作しません。

私が念頭に置いているのは、 onscroll イベントを検出して要素を再配置することです。そのため、ビューポートの境界にあります。

しかし、ビューポートの座標を検出する方法が見つかりません。誰でもこれを手伝ってもらえますか?

ありがとう。

4

3 に答える 3

0

iScrollを見てください。期待どおりの結果が得られない場合は、実装を参照用に使用できます。event.preventDefault()両方を 行いevent.stopPropagation()、モバイルサファリがタッチイベントに応答しないようにするための秘訣だと思います。

iScroll が誕生したのは、モバイル Webkit (iPhone、iPod、Android、および Pre) が、固定幅/高さの要素内でコンテンツをスクロールするネイティブな方法を提供していないためです。この不幸な状況により、Web アプリは position:absolute ヘッダーおよび/またはフッター、およびコンテンツのスクロールする中央領域を持つことができなくなります。

于 2010-06-02T19:15:12.807 に答える
0
document.addEventListener(
    'touchmove',
    function touchMove(event) {
        event.preventDefault()
    },
    false
);
于 2009-08-26T12:45:19.377 に答える
0
var viewport_x = window.pageXOffset;
var viewport_y = window.pageYOffset;
于 2011-04-06T10:28:48.997 に答える