我遇到了setTimeout函数的奇怪问题!我有两个html页面如下:
** Index.html:**
<script>
var url = 'http://127.0.0.1/s/s1.html';
var x ;
function closeTab() {
try {
console.log('trying...');
x.close();
console.log('closed!');
} catch (e) {
console.log('cannot close tab!', e);
}
};
x = window.open(url,'_blank');
setTimeout(closeTab, 3000);
</script>
和
s1.html:
<script>
alert(1);
</script>
问题是在s1.html中显示警告对话框后,父窗口(index.html)无法通过 closeTab 功能关闭子选项卡,直到用户关闭警告对话框!我希望(强制)在3000毫秒后关闭它。甚至我为setTimeout搜索了一个替代函数,但是一些解决方案使浏览器冻结。
任何想法?
由于