1

erichynds.comの idleTimeout jquery プラグインを使用してきましたが、Firefox と IE で正常に動作しています...ただし、これを chrome 11.0 で使用すると奇妙な問題が発生することがわかりました。

アイテムの削除を処理するために、javascript の「確認」アラートを使用しています。Chrome では、「確認」ボックスが呼び出されるたびに、「idleTimeout」ダイアログ ボックスが表示されます。これは、ユーザーがアイドル状態でマウスが動かないかのように表示されます。これは、確認プロンプトのボタンの 1 つを押した直後に発生します。

javascriptの「確認」ボックスの代わりにjquery uiダイアログボックスを使用してみましたが、問題は解決しましたが、要件のために「同期」確認ボックスを使用する必要があるため、jquery uiダイアログを破棄する必要がありました箱。

この問題を回避する方法はありますか? 前もって感謝します。

4

1 に答える 1

1

このリンクで解決策を見つけました。別のユーザーがこれに遭遇した他の人のためにこの修正を投稿した方法の約半分です。

リンク


No idea why Chrome alert/confirm causes idle to be triggered, but here is my work-around. In jquery.idletimer.js, the toggleSTate function, replace the the "// reset timeout counter" with:

// reset timeout counter
var elapsed = (+new Date) - f.olddate;
f.olddate = +new Date;

// handle Chrome always triggering idle after js alert or comfirm popup
if (idle && (elapsed < timeout)) {
idle = false;
clearTimeout($.idleTimer.tId);
if (enabled)
$.idleTimer.tId = setTimeout(toggleIdleState, timeout);
return;
}
于 2011-05-18T20:45:59.273 に答える