我正在尝试在同一个脚本中使用setTimeout()和window.open,但似乎无法正常工作。
代码:
window.open('http://google.com', '_self'); setTimeout(function() { alert('bla')},4000);
或
document.location = 'http://google.at'; setTimeout(function(){alert('bla')},4000);
为什么会这样,我该如何解决?
编辑:嘿,谢谢你们,但为什么会这样呢?
window.open('http://google.com', '_blank');window.open('http://arstechnica.com', '_self'); alert('bla');
显示警报并打开arstechnica
答案 0 :(得分:0)
在这两种情况下,您的代码都会说:
离开页面后,该页面的JavaScript执行环境将被销毁。脚本结束,没有alert
函数可以调用。
答案 1 :(得分:0)
导航到Google(或任何相关页面)后,浏览器会加载新文件,但不会继续运行您的脚本。
您可以尝试在新页面中打开Google,然后它会继续在旧页面中运行您的代码。