在“;选择“;只更新一次新选项卡中打开的url
On "Select" update open url in new tab... only once
当用户更改选择下拉列表的值时,我正在使用javascript将url加载到_blank页面中。
urlmenu.onchange = function() {
window.open( this.options[ this.selectedIndex ].value, '_blank');
};
但我只想让脚本打开一次新的选项卡,如果它们再次更改,则在以前打开的选项卡中打开新页面。
您可以使用窗口的引用来检查窗口是否打开
urlmenu.onchange = function() {
if (typeof(ref) != 'undefined') {
ref.location = this.options[ this.selectedIndex ].value;
} else {
ref = window.open( this.options[ this.selectedIndex ].value, '_blank');
}
};
第二个参数应该是新创建的窗口的名称(在本例中为_blank
)。它在HTML target
属性中用于引用弹出窗口,JS中的和以检查window.open()
是否应该打开新窗口/选项卡,或重新加载现有窗口/选项卡。
要在每次调用时打开一个新选项卡,请创建一个唯一的窗口名称,例如使用时间戳。若要在同一选项卡中打开所有新页面,请为窗口指定一个常量名称。
var isOpen = false;
if(!isOpen){
urlmenu.onchange = function() {
window.open( this.options[ this.selectedIndex ].value, '_blank');
};
isOpen = true;
}
试着用这个,希望我能正确理解。
相关文章:
- 通过js在新选项卡中有条件地打开url
- 根据select选项元素将表单重定向到不同的URL
- 一次又一次地在新的和相同的选项卡中打开一个url
- 如何在现有的浏览器选项卡中打开url
- Google Script HtmlService,通过多个选项卡复制URL变量
- 使用Javascript根据URL中的关键字隐藏下拉选项
- 如何在新选项卡中而不是在新窗口中打开URL
- 如何重定向当前选项卡'Chrome扩展中的url
- 访问url[材质Ui+选项卡]时,Angular Ui路由器未加载视图
- 在Chrome中的适当选项卡/窗口中打开URL
- 如何使用jQuery更改当前URL并在单击时打开新选项卡
- 当用户在选择框中选择选项时,使用window.location.href重定向用户只会更改导航器中URL的最后一位
- 根据选择选项元素将表单重定向到不同的URL,并在电子邮件中获取表单详细信息
- 获取当前URL,替换部分路径名,然后在空白选项卡中打开
- 从Javascript中的Chrome扩展获取选项卡url
- 在浏览器操作中修改当前选项卡的URL的TLD
- 使用javascript在chrome浏览器的新选项卡中以程序方式打开URL
- 使用 Javascript 根据 URL 哈希设置所选选项
- 如何从用户选项url匹配在Content_Script
- Firefox插件"RequirementError:选项"url"是无效的!”当发出HT