npa*_*yne 6 javascript jquery google-chrome dom-events
我添加了一个事件侦听器来mousemove触发函数。由于某种原因,它在 Chrome 中没有被触发。我可以说出来,因为我在测试期间正在写入控制台。和keyup eventlistener都会scroll eventlistener触发,但mousemove在 Chrome 中不会触发。它在 Safari 和 FireFox 中运行良好。这是我的代码:
document.body.addEventListener("mousemove", RenewTimeoutTime);
document.body.addEventListener("keyup", RenewTimeoutTime);
document.body.addEventListener("scroll", RenewTimeoutTime);
Run Code Online (Sandbox Code Playgroud)
以及它触发的函数:
function RenewTimeoutTime(){
var pageName = window.location.href;
var currentTime = new Date();
localStorage.setItem("inTimeout", false);
localStorage.setItem("AI_Timeout_Time", currentTime.getTime() + 270000;
console.log(localStorage.getItem("AI_Timeout_Time"));
}
Run Code Online (Sandbox Code Playgroud)
它确实有效,你只需要先检查 DOM 是否已加载。
将当前脚本替换为
<script>
document.addEventListener('DOMContentLoaded', addListen, false); //this is the important bit
function addListen(){
document.body.addEventListener("keyup", RenewTimeoutTime);
document.body.addEventListener("scroll", RenewTimeoutTime);
document.body.addEventListener("mousemove", RenewTimeoutTime);
}
function RenewTimeoutTime(){
var pageName = window.location.href;
var currentTime = new Date();
var time = currentTime.getTime(); //i replaced the time just to be neat
localStorage.setItem("inTimeout", false);
localStorage.setItem("AI_Timeout_Time", time + 270000);
console.log(localStorage.getItem("AI_Timeout_Time"));
}
</script>
Run Code Online (Sandbox Code Playgroud)
那么你应该可以走了。住在这里
| 归档时间: |
|
| 查看次数: |
7177 次 |
| 最近记录: |