ボタンを押すと「***していいですか?」という確認ダイアログが出てきて、「OK」を押すと処理を続けて、「キャンセル」を押したら中断ってな処理を作った。
ダイアログはtouchendイベントで出てくるようにした。
どっちを押したとしても、それぞれの処理をして終わり…になる予定だったが、ダイアログが閉じた後、ボタンをタッチすると(touchstart)指を離さなくても、もう一度同じダイアログが表示されるようになった
alertでも同じようなことが一度あった。iPhoneだとalertやconfirmでダイアログが出ると、イベントが途中で止まって、もう一度触ると止まったとこから再度動き出す…ようなイメージ。
対処法::クリックイベントの中身を全部setTimeoutで囲った。
elem.addEventListner("click", function(){ setTimeout(function(){ //クリック時の処理 }, 0); });
0 件のコメント:
コメントを投稿