我有一些JavaScript来控制浏览器窗口的更改,如果用户更改选项卡或窗口,则会重置JavaScript倒计时。
但是在我的内容中有一个iframe,然后需要访问,并且在访问期间无法重置倒计时。
如果用户点击iframe内容,则重置倒计时,但不会发生。 我该怎么控制呢?
在我的剧本之上:
<script type="text/javascript">
var isActive;
var g_timer = null;
var numero = 90;
window.onfocus = function () {
isActive = true;
};
window.onblur = function () {
isActive = false;
};
setInterval(function () {
window.isActive ? decCount() : resetCount();
}, 1000);
function decCount(){
if(numero > 0){
document.getElementById('timers').innerHTML = --numero;
}
}
function resetCount(){
numero = 91;
clearTimeout(g_timer);
startTimer();
}
function startTimer() {
g_timer = window.setTimeout(function() {
window.location.href = '/office/tasks/secure/';
}, 92000);
}
function timersfocus(){
$('#timers').focus();
}
</script>
答案 0 :(得分:1)
您可以使用来自jquery的blur()
事件
$(window).blur(function() {
//your code here when window/tab changes
});