用javascript关闭firefox选项卡

时间:2014-02-23 19:30:56

标签: javascript

我有一个javascript代码,每隔50秒从列表中打开浏览器中的新标签,但浏览器会在50tabs或更多之后崩溃。 所以我想关闭新标签,每隔50秒打开另一个标签。

我的代码是:

<html>
<head>
<script>
function openWindow(){
    window.open('"about:blank"');
    var x = document.getElementById('a').value.split('\n');
    atTime = 0;
    for (var i = 0; i < x.length; i++) {
      if (x[i].indexOf('.') > 0) {
        site = x[i];
        if (x[i].indexOf('://') < 0) { site = 'http://' + x[i]; }
        setTimeout("window.open('" + site + "')", atTime);
        atTime += 50000;
      }
    }
}
</script>
<style>
html, body
{
    height : 99%;
    width  : 99%;
}

textarea
{
    height : 80%;
    width  : 90%;
}
</style>
</head>
<body>
<textarea id="a"></textarea>
<br>
<input type="button" value="Open Windows" onClick="openWindow()">
<input type="button" value="Clear" onClick="document.getElementById('a').value=''">
</body>
</html>

3 个答案:

答案 0 :(得分:0)

window.open返回对新窗口的引用。在该句柄上调用close

https://developer.mozilla.org/en-US/docs/Web/API/window.close

注意顺便说一句:

常见问题

如何阻止询问用户是否要关闭窗口的确认消息?     你不能。 javascript无法打开的新窗口通常不会被JavaScript关闭。基于Mozilla的浏览器中的JavaScript控制台将报告警告消息:&#34;脚本可能无法关闭脚本未打开的窗口。&#34;否则,浏览器会话期间访问的URL的历史记录将丢失。

答案 1 :(得分:0)

window.close()应该可以关闭你打开的标签(但不能关闭你没有打开的标签)

实际上它不能被关闭,除非它是由脚本打开的,但有一种方法可以欺骗浏览器认为是这种情况:

window.open('','_parent','');

然后你可以使用

window.close();

把它放在一起:

<script language="javascript" type="text/javascript">
function closeWindow() {
window.open('','_parent','');
window.close();
}
</script> 

参考:http://www.yournewdesigner.com/css-experiments/javascript-window-close-firefox.html

答案 2 :(得分:0)

关闭firefox选项卡使用     window.close()的 这将关闭当前窗口。