我有一个弹出窗口,我正在使用下面的脚本打开它。在每次点击时,我都想打开新的弹出窗口。我了解,为窗口设置唯一名称将解决问题(在本例中为“SampleWindow”)。保持窗口唯一性的最佳方法是什么?有没有其他方法来管理 javascript 弹出窗口?
window.open(url, 'SampleWindow', 'WIDTH=300,HEIGHT=250');
我有一个弹出窗口,我正在使用下面的脚本打开它。在每次点击时,我都想打开新的弹出窗口。我了解,为窗口设置唯一名称将解决问题(在本例中为“SampleWindow”)。保持窗口唯一性的最佳方法是什么?有没有其他方法来管理 javascript 弹出窗口?
window.open(url, 'SampleWindow', 'WIDTH=300,HEIGHT=250');
将值传递_blank
给name
参数会将传递的值加载URL
到新窗口中。像这样:
window.open(url, '_blank', 'width=300,height=250');
参数的其他选项name
(可选)包括:
_blank
- URL 被加载到一个新窗口中。这是默认的_parent
- URL 被加载到父框架中_self
- URL 替换当前页面_top
- URL 替换任何可能加载的框架集name
- 窗口的名称请注意,如果您将此 JavaScript 传递给A
IE 浏览器期望返回值的锚标记,否则它将引用A
标记本身。您的代码如下所示:
<a href="javascript:var w=window.open(url, '_blank', 'width=300,height=250');">test</a>
或更好(以避免在状态栏中向用户显示您的代码):
<a href="javascript:void(0);" onclick="window.open(url, '_blank', 'width=300,height=250');">test</a>
链接:
您可以将时间戳附加到您的窗口名称以创建真正唯一的窗口名称并将其分配给变量。作为...
var myWindow = window.open(url, 'SampleWindow'+new Date().getTime(), 'WIDTH=300,HEIGHT=250');
既然你想要的不仅仅是 windows,那么通过数组来管理 windows 会更好。
var myWindow = [];
myWindow.push(window.open(url, 'SampleWindow'+new Date().getTime(), 'WIDTH=300,HEIGHT=250'));
这些窗口可以由myWindow[index]
like管理myWindow[2].close();
。
您可能每次都更改名称
var i = 0;
window.open(url, 'SampleWindow' + i, 'WIDTH=300,HEIGHT=250');
i++;