2

我有一个链接,点击后会打开一个新窗口,使用:

var win = window.open(url,....);

此窗口包含一个 Flash 游戏。

我想在 20 分钟不活动后关闭窗口。

我知道我可以使用以下方法创建超时:

var t = setTimeout("dosomething()", 5000)

但是我如何才能确定弹出窗口上是否有活动?

如果用户与 flash 交互,我还能通过 dom 事件获取此信息吗?

我想避免他们在玩的时候关窗的情况:)

这是在基于 IE 的环境中。

4

2 回答 2

1

如何为 、 和 事件添加监听事件mousemovekeypressclick每次事件发生时清除计时器。

var t = setTimeout(closeWindow, 5000);
$(document).on('mousemove keypress click', function(){
   clearTimeout(t);
   t = setTimeout(closeWindow, 5000); 
});

function closeWindow(){
   window.close();
}
于 2013-01-10T20:22:26.627 回答
1
theInterval = 0;    
function doSomething(){
    do something;
}

function ScheduleDoSomething(){
    theInterval = setInterval(function () {
        doSomething();}, timeToClose);
}

jQuery(document).keydown(function (e) {
    clearInterval(theInterval);scheduleDoSomething();
});

我希望这有帮助。

于 2013-01-10T20:16:53.117 回答