ユーザーが数秒間ページを使用していないことを確認したいですか?? javascript を使用することは可能ですか?
3 に答える
マウス移動イベント ハンドラーとタイマーをインストールできます。マウスの移動では、現在の時刻で変数を設定し、タイマーでは、マウスイベントが表示されない期間を確認します。
もちろん、ユーザーが代わりにキーボードを使用しているかどうかを確認するために、 keydown ハンドラーも設定する必要があります。
明らかに、ユーザーがページを注意深く読んでいたかどうかを知る方法はありません...そして、読むことは時々「使用する」と見なされます...
「使用していない」をどのように定義するかによって異なりますが、ユーザーがタブを切り替えたりブラウザを変更したりするとしましょう。
jQuery を使用すると、この evan を簡単にキャプチャできます。以下のコードはアイデアにすぎないことに注意してください。エラーが発生した場合、デバッグなしでは機能しない可能性がありますが、私のポイントは何ですか?
var seconds=0;
var notLooking=false;
$(window).blur(function(){
check();
});
$(window).focus(function(){
absent=false;
seconds=0;
});
function check(){
if( seconds > 10 && absent ){
alert("dude you should monitor your chat, you are absent too long!!!");
seconds=0;
absent=false;
}else{
if( absent ){
setTimeout(check, 1000);
}else{
//user is back
absent=false;
seconds=0;
}
}
}
「使用していない」とはどういう意味かを理解する必要があります。最新のブラウザーの一般的なアプローチの 1 つは、ページ タブにフォーカスがあるかどうかを確認することです。これには、ウィンドウイベントfocus
とblur
を使用できます。参照: https://stackoverflow.com/a/6184276/362536