Javascript setTimeout在XUL 7中不起作用
我无法在XUL 7.0中使用setTimeout()函数,它不起作用 关闭XUL窗口时,我创建了一个事件侦听器,如下所示Javascript setTimeout在XUL 7中不起作用,javascript,xul,Javascript,Xul,我无法在XUL 7.0中使用setTimeout()函数,它不起作用 关闭XUL窗口时,我创建了一个事件侦听器,如下所示 window.addEventListener("close",function(event) { try { setTimeout(function() { alert("bip"); }, 2000); } catch(e) { //alert(e.message); } },false);
window.addEventListener("close",function(event) {
try
{
setTimeout(function() { alert("bip"); }, 2000);
}
catch(e)
{
//alert(e.message);
}
},false);
但警报不会到来
任何帮助都将不胜感激
setTimeout
不会阻塞。该功能将完成,窗口将关闭,两秒钟后计时器将耗尽。在该阶段,执行环境将消失(窗口关闭),因此不会发生任何事情。setTimeout
不会阻塞。该功能将完成,窗口将关闭,两秒钟后计时器将耗尽。在该阶段,执行环境将消失(窗口关闭),因此不会发生任何事情。尝试绑定'onbeforeunload'
事件。。。虽然,实际上,如果你在关闭事件中超时2秒,你不能期望它被触发(你不能期望窗口在关闭事件后存活2秒),你说的“XUL 7.0”可能是指Firefox 7.0中的XUL?或者XULRunner 7.0?很抱歉延迟了,Sima:即使我给10秒,它也没有按预期工作Wladimir:XULRunner 7.0尝试绑定“onbeforeunload”
事件。。。虽然,实际上,如果你在关闭事件中超时2秒,你不能期望它被触发(你不能期望窗口在关闭事件后存活2秒),你说的“XUL 7.0”可能是指Firefox 7.0中的XUL?或者XULRunner 7.0?很抱歉延迟,西玛:即使我给10秒,它也没有按预期工作Wladimir:它是XULRunner 7.0,它甚至不会运行-关闭窗口会杀死所有与它相关的超时。但原因是一样的,这些暂停的背景已经消失了。找到解决办法了。如果我们只是将setTimeout()保留在close函数中,它就不会关闭。我使用了preventDefault()使close函数不关闭并执行我的操作,然后使用currentWinObj.close()关闭XUL窗口window.addEventListener(“关闭”,函数(事件){try{preventDefault();setTimeout(函数(){alert(“bip”);},2000);window.close();}catch(e){//alert(e.message);},false);`谢谢你的帮助!:)它甚至不会运行-关闭窗口会杀死所有与之相关的超时。但原因是一样的,这些暂停的背景已经消失了。找到解决办法了。如果我们只是将setTimeout()保留在close函数中,它就不会关闭。我使用了preventDefault()使close函数不关闭并执行我的操作,然后使用currentWinObj.close()关闭XUL窗口window.addEventListener(“关闭”,函数(事件){try{preventDefault();setTimeout(函数(){alert(“bip”);},2000);window.close();}catch(e){//alert(e.message);},false);`谢谢你的帮助!:)