visibilitychange 的 MDN 页面声明“当选项卡的内容变得可见或隐藏时,它被触发”。但是,当我运行以下代码片段时,我立即收到无限的警报链,因此它显然不断被触发。为什么会这样?
function doEverything() {
if(document.visibilityState == 'visible') {
alert(document.visibilityState);
document.removeEventListener("visibilitychange", doEverything());
}
}
document.addEventListener("visibilitychange", doEverything());
最佳答案
您正在调用函数而不是将其作为参数传递。
document.addEventListener("visibilitychange", doEverything);
和
document.removeEventListener("visibilitychange", doEverything);
关于javascript - visibilitychange 未按预期运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29993783/