【发布时间】:2018-04-11 08:53:22
【问题描述】:
我正在开发一个 Web 应用程序。
在那,我需要在不同的浏览器选项卡中从主页打开多个页面,如果主页关闭,则所有其他打开的浏览器选项卡需要关闭或单击Close Tab 按钮。
我通过使用Array 来完成此操作,但是当主页面刷新时Array 会自动重置。
示例代码:-
Jsp
<a4j:commandButton value="Test1" onclick="return newTab('test1.jsp');"/>
<a4j:commandButton value="Test2" onclick="return newTab('test2.jsp');"/>
<a4j:commandButton value="Test3" onclick="return newTab('test3.jsp');"/>
<a4j:commandButton value="Close Tab" onclick="closeTabs();"/>
JavaScript
var windowObject = new Array();
function newTab(mypage)
{
var newwin=window.open(mypage);
windowObject.push(newwin);
return false;
}
function closeTabs()
{
for (i = 0; i < windowObject.length; i++)
{
windowObject[i].close();
}
}
帮我解决这个问题。
【问题讨论】:
-
我认为不可能将对象存储到 localStorage。您可以存储参考(名称/ID)。但是我再次怀疑你是否会找到一种方法来创建一个浏览器选项卡对象并能够关闭它,因为这将是一个主要的安全问题。
-
@Jeff,我已经尝试使用 localStorage 但无法获取浏览器选项卡对象。
标签: javascript jsp