3

私はiPad用のHtmlおよびJavascriptカタログページスライダーを開発しています。これは、縦向きで1ページ、横向きで2ページを表示します。

カタログの状態を維持するための2つの変数は、イベントハンドラーの方向が変わるたびに操作されます。

iPadをすばやく投げて回すと、変数が破損します。私が通常のように(かなりゆっくりと)操作するとき、それらは問題ありません。

変数を使用してlocked、ハンドラーがまだ完了していない場合、つまりモバイルSafariが方向の変更時にJavascriptの実行を中断した場合にハンドラーが実行されないようにしました。

function updateOrientation() {
    if (locked) return;
    locked = true;
    ...

ただし、これは当てはまらないようです。ハンドラーは、再度呼び出される前に常に終了します。

したがって、変数はどのように破損しますか?

何か案は?

4

1 に答える 1