-
イベントリスナーを使用した方法:
var logoutTimer; var idleTime = 300000; // アイドル時間(ミリ秒) 例: 5分 function resetLogoutTimer() { clearTimeout(logoutTimer); logoutTimer = setTimeout(logout, idleTime); } function logout() { // ログアウト処理を実行するコードを記述する } $(document).on('mousemove keydown', resetLogoutTimer); resetLogoutTimer();
-
jQueryの
idleTimer
プラグインを使用した方法:var idleTimer; var idleTime = 300000; // アイドル時間(ミリ秒) 例: 5分 $(document).idleTimer(idleTime); $(document).on('idle.idleTimer', function() { // ログアウト処理を実行するコードを記述する });
-
サーバーサイドとの連携を使用した方法: クライアント側でのアイドル時間の監視とサーバーサイドでのセッション管理を組み合わせる方法もあります。以下はサーバーサイドでセッションを管理するPHPの例です。
var idleTime = 300000; // アイドル時間(ミリ秒) 例: 5分
function resetLogoutTimer() {
$.ajax({
url: 'session_reset.php', // サーバーサイドのセッションリセット処理を呼び出すURL
method: 'POST',
success: function() {
// セッションがリセットされた後にタイマーを再設定する
setTimeout(logout, idleTime);
}
});
}
function logout() {
// ログアウト処理を実行するコードを記述する
}
$(document).on('mousemove keydown', resetLogoutTimer);
resetLogoutTimer();
これらはいくつかの一般的なアイドルログアウトの実装例です。具体的な要件や使用しているフレームワークによって、最適な方法が異なる場合があります。必要に応じてコードをカスタマイズしてください。