Javascript x分钟后关闭弹出窗口,除非有活动

Javascript x分钟后关闭弹出窗口,除非有活动,javascript,jquery,flash,popup,Javascript,Jquery,Flash,Popup,我有一个链接,单击该链接时,会使用以下内容打开一个新窗口: var win = window.open(url,....); 此窗口包含一个flash游戏 我想在不活动20分钟后关闭窗口 我知道我可以使用以下方法创建超时: var t = setTimeout("dosomething()", 5000) 但我如何才能确定弹出窗口上是否有活动 如果用户与flash交互,我仍然可以通过dom事件获取此信息吗? 我想避免在他们玩的时候关上窗户的情况:) 这是在一个基于IE的环境中 theInte

我有一个链接,单击该链接时,会使用以下内容打开一个新窗口:

var win = window.open(url,....);
此窗口包含一个flash游戏

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

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

var t = setTimeout("dosomething()", 5000)
但我如何才能确定弹出窗口上是否有活动

如果用户与flash交互,我仍然可以通过dom事件获取此信息吗?

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

这是在一个基于IE的环境中

theInterval = 0;    
function doSomething(){
    do something;
}

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

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

我希望这会有所帮助。

鼠标移动
按键
、和
单击事件添加监听事件,并在每次事件发生时清除计时器,怎么样

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

function closeWindow(){
   window.close();
}

我已经在IE9和FF 17.0.1中对此进行了测试,它似乎按照我的预期工作。