打开页面后,我想在2分钟后在该页面中显示一个弹出窗口。在同一页面中,我有3个按钮。当我在不到2分钟的时间内重新访问该页面时,我单击任一按钮都想重置计时器。请参阅下面的说明。
我有index.html
。在该页面中,我有3个按钮,例如button1
,button2
和button 3
。
如果用户未不单击该页面中的任何按钮,则会在2分钟内显示弹出窗口,并显示一条消息“您的时间已经过去”。
如果用户在2分钟内单击任何按钮,则计时器应重置为0。
有人可以帮助我吗?我尝试了不同的代码,但没有用。
答案 0 :(得分:2)
您可以使用setTimeout
并使用clearTimeout
取消超时,例如:
var resetButton =$('#resetButton')[0],timerId;
function timerExpired() {
alert('Timer expired');
}
$(resetButton).click(function() {
clearTimeout(timerId);
timerId = setTimeout(timerExpired, 5000);
}).triggerHandler('click');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<html>
<body>
<button id="resetButton">Reset</button>
</body>