7

Web サイトで setInterval 関数を使用していますが、IE、Chrome、Firefox、および Safari で問題なく動作します。ipad/iphone (サファリ モバイル) で試してみると、問題が発生します。画面をスクロールすると、setInterval 関数が一時停止し、スクロールを停止したときにのみ再開します。

関数が一時停止するのを防ぐ方法はありますか? ありがとう

4

3 に答える 3

6

残念ながら、そのような行動を防ぐ方法はありません。ここ SO には、この問題に関する多くのトピックがあります (関連性の低いトピック)。特に興味深いトピックを次に示します。その要約は簡単です:

iOS エラスティック スクロールは追跡できません。そのためのイベントリスナーはありません+スクロール中にタイムアウト/間隔の両方が実行されません。また、iOS5 には requestAnimationFrame がないため、これを解決することは不可能に思えます。

于 2012-06-24T13:42:11.730 に答える
1

iOS6 Safari には、ページのスクロール中に作成されたタイマーを強制終了するバグがあります。

スクロールが終了した後にタイマーを再作成することにより、kTmnh によって提供されるこの問題に対する修正があります。

https://gist.github.com/3798925 .

于 2014-02-25T06:10:16.837 に答える
0

この件名に関する@Pattishallの回答を確認してください iOS 6 jsイベント関数は、setTimeoutが含まれている場合は呼び出されません

于 2013-04-08T12:54:10.267 に答える