我正在使用programO(我是php的新手)进行面试聊天机器人,如果长时间聊天窗口没有活动,我想显示一条消息。我搜索了jquery插件,但它们用于检测鼠标或键盘笔划,但我只是意识到检测到聊天窗口是否有用户输入。我还搜索了javascript settimeout和settimeinterval函数来显示消息,但我无法理解如何将它们与聊天窗口形式一起使用。
答案 0 :(得分:0)
setTimeout需要与clearTimeout一起使用。每当发生时间重置事件时,请使用clearTimeout。
示例:
<script>
var interval = -1;
var TIMEOUT = 5; // seconds
function doTimeout(){
alert('show timeout message');
startClock(); // if you want to restart the timer
}
function startClock(event){
console.log("foo",interval, event);
if(interval !== -1){
console.log("clearing timeout");
clearTimeout(interval);
}
interval = setTimeout(doTimeout,TIMEOUT*1000);
}
startClock(); // if you want to start the timer on arrival
</script>
<!-- add remove events as you see fit -->
<textarea id="chatinput" onblur="startClock(event)" onfocus="startClock(event)" onchange="startClock(event)" onkeyup="startClock(event)"></textarea>
有关超时的更多信息:
标签:settimeout setinterval
问题:javascript setTimeout clearTimeout