一旦用户空闲了特定时间段,我正在尝试刷新页面或 iFrame(两者都很好)。我想确定如果鼠标在实际 iFrame 上(没有移动),那么我的状态仍然被认为是活动的。如果我在浏览器的不同选项卡中并且鼠标正在移动或空闲,那么我希望包含 iFrame 的选项卡仍然刷新。
我尝试使用多个 jquery 插件和其他解决方案,但它们似乎都没有意识到当我的鼠标悬停在 iFrame 上时,它不应该刷新。
我从相关答案(https://stackoverflow.com/a/4644315)中的以下代码开始
我使用 vimeo.com 作为 iFrame 的示例源。
<html>
<head>
<title>iFrame AutoRefresh on idle</title>
<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script>
var time = new Date().getTime();
$(document.getElementById("iFrame1")).bind("mouseover", function(e) {
time = new Date().getTime();
});
function refresh() {
if(new Date().getTime() - time >= 6000)
window.location.reload(true);
else
setTimeout(refresh, 10000);
}
setTimeout(refresh, 10000);
</script>
<style>
body {
margin: 0;
}
</style>
</head>
<body>
<iframe id="iFrame1" src="http://www.vimeo.com/" style="border: 0; width: 100%; height: 100%">Your browser doesn't support iFrames.</iframe>
</iframe>
</body>
</html>