javascript - 如果浏览器中没有操作,如何关闭 Bootstrap 模式

标签 javascript jquery css html twitter-bootstrap

如果浏览器屏幕 10-15 秒内没有任何操作,我想关闭 Bootstrap 模式。

我试过 settimeout() 函数,但这不会检查浏览器中的操作。

setTimeout(function() {$('#form').modal('hide');}, 10000);

那么,有没有办法在浏览器中没有操作的情况下隐藏模态框?

最佳答案

如果键盘上有 keypress 或鼠标上有“mousemove”,则下面的代码片段设置了标志 actionAppeared

var actionAppeared = false;

jQuery(document).mousemove(function (e) { actionAppeared = true; });
jQuery(document).keypress(function (e) { actionAppeared = true; });

setTimeout(function() {
    if(!actionAppeared) {
        $('#form').modal('hide');}
    }
, 10000);

这是一个有效的 demo .打开控制台可以看到 mousemovekeypress 事件。

mousemove 事件的触发非常简单,因此要测试它,请打开模式并快速将光标从键盘上移开。

关于javascript - 如果浏览器中没有操作,如何关闭 Bootstrap 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36300903/

相关文章:

javascript - 将 2 个 div 附加到一个 div 中以使用 javascript 打印它们

php - 使用 JQuery 选择表单数组值

html - 当绝对定位元素在固定宽度容器内时,如何使它占据全屏宽度?

jquery - 使用 JQuery/JQM 动态创建复选框时保留 CSS

jquery - Chrome 中平滑滚动的冲突

php - 如何最好地计算两个城市(加拿大)之间的距离?

javascript - 如何不使用 Redux 传递 props?

javascript - 在其他函数之后加载 javascript 函数

javascript - Bootstrap 折叠表行

javascript - jquery.show() 不工作