【问题标题】:How to show popup after a specific time of no interaction [closed]如何在没有交互的特定时间后显示弹出窗口[关闭]
【发布时间】:2019-08-10 21:32:47
【问题描述】:

当页面打开时,我想在 2 分钟后在该页面中显示一个弹出窗口。在同一页面中,我有 3 个按钮。当我在不到 2 分钟的时间内重新访问该页面并单击任何一个按钮时,我想重置计时器。请参阅下面的说明。

  1. 我有index.html。在该页面中,我有 3 个按钮,例如 button1button2button 3

  2. 如果用户在 2 分钟内点击该页面中的任何按钮,则会出现弹出消息“您的时间已结束”。

  3. 如果用户在 2 分钟内点击任意按钮,计时器应重置为 0。

谁能帮帮我?我尝试了不同的代码,但它没有用。

【问题讨论】:

标签: javascript jquery html asp.net twitter-bootstrap-3


【解决方案1】:

您可以使用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>

【讨论】:

  • 按钮在哪里,你应该在点击按钮时重置计时器
  • 用按钮更新
  • 在stackoverflow中我们可以帮助你,但你不工作。请查看示例并分析发生的情况并调整您的代码。您没有提供任何代码@Ramanji
  • @Drusto 这正是你不应该费心回答这个问题的原因
  • 不确定var btn = $("#btn")[0]; $(btn)的使用-为什么不保留第一个jquery对象var btn = $("#btn")你仍然可以使用$(btn)(即$($("#btn")))而没有不良影响
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多