JavaScript の確認ダイアログが表示されますが、[キャンセル] をタップすると、ダイアログが閉じた後、画面の任意の場所をタップすると、ダイアログが再度表示されます。余分な 1 回だけ発生し、ダイアログがポップアップせずにページをもう一度タップできます。
これは、iOS 5.0.1 を実行している iPhone/iPad でのみ表示されます。私は iOS 6 デバイスを持っていないので、そこで起こっているかどうかはわかりません。
私が使用しているコードは次のとおりです。
$(bpm.remoteAppDivName).on('tap', 'a.delete-pending-payment', function(event) {
if (isJQMGhostClick(event)) { return false; }
var deleteGlobalPaymentURL = $(this).attr('href');
var confirmMsg = confirm ("Are you sure you want to do that?");
if (confirmMsg === true){
window.location = '/index.htm';
}
event.preventDefault();
return false;
});
var lastclickpoint, curclickpoint;
var isJQMGhostClick = function(event){
curclickpoint = event.clientX+'x'+event.clientY;
var ret=false;
if (lastclickpoint === curclickpoint) {
ret=true;
} else {
ret=false;
}
lastclickpoint = curclickpoint;
return ret;
}
問題ページへのリンクは次のとおりです: http://www.5280skateparks.com/dev/confirmBug.htm
どんな助けでも大歓迎です。
更新: iOS 6.0.1 でも発生していることを確認しました。