您如何暂时禁用JavaScript中的所有事件?我们希望禁用它们,以便某些事件要等到我们单击某些东西700毫秒后才能运行。

最佳答案

如果您试图暂时禁用所有点击,那么一种不更改页面其余部分或代码的简单方法是在整个页面上绝对放置一个透明的div,以拦截并阻止所有点击的传播事件。然后,使用setTimeout()在任意时间间隔删除该透明div。

将blockDiv放入页面HTML中,使其已经存在。

在您的HMTL中:

<body>
    <div id="blockDiv"></div>
    ... other page HTML here
</body>

然后,在页面中添加以下CSS:
#blockDiv {
    position: absolute;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    z-index: 999;
}

并且,此javacript:
$("#blockDiv").click(function(e) {
    // stop propagation and prevent default by returning false
    return false;
});

setTimeout(function() {
    $("#blockDiv").remove();
}, 700);

07-24 09:45