Javascript 如何打开一个新的html页面和一个链接在一个按钮点击
因此,我要做的是打开我在Javascript 如何打开一个新的html页面和一个链接在一个按钮点击,javascript,html,Javascript,Html,因此,我要做的是打开我在href中提供的URL,同时打开一个新的html页面。单击按钮,它将在一个新窗口中指向URL,该窗口带有target=“\u blank”。但我想做的是在新窗口中打开链接,并在上一个窗口中打开新的HTML页面 下面是我的代码 <li class="search-li"> <div class="collapsible-header collapsible-noborder sakura-lighter-bg"
href
中提供的URL,同时打开一个新的html页面。单击按钮,它将在一个新窗口中指向URL,该窗口带有target=“\u blank”
。但我想做的是在新窗口中打开链接,并在上一个窗口中打开新的HTML页面
下面是我的代码
<li class="search-li">
<div class="collapsible-header collapsible-noborder sakura-lighter-bg">
<i class="fa fa-mobile-alt" aria-hidden="true"></i>TEST LIST
</div>
<div class="collapsible-body collapsible-noborder sakura-midlight-bg">
<button class="primary download">
<a id="buttton1" class="buttton7" target="_blank" href="example.com">Download</a>
</button>
</div>
</li>
测试列表
您需要使用window.open()方法
测试列表
类似的东西
单击将打开一个包含数据href的新窗口,并使用href更改现有窗口
window.addEventListener(“加载”,函数(){
document.getElementById(“button1”).addEventListener(“单击”,函数)(){
window.open(this.getAttribute(“data href”),“_blank”)
})
})
测试列表
测试列表
以下内容应完成此工作:
<a onclick="window.open('http://google.com');" id="buttton1"
class="buttton7" href="http://yahoo.com">Download</a>
无需使用\u blank
,因为window.open()
会为我们这样做,而当前窗口会从href
属性更新其位置,您可以使用此
转到文件夹中的另一页
或者你可以使用这样的链接
转到URL中的其他页面
这不会打开两个窗口。仅供参考。您需要使用window.location.href=“”;或窗口。位置。替换(“”);重定向原始页面。不过,如果您为了安全起见跨https/http站点,则可能会出现问题。@是否总是打开两个窗口?我看不出有这个必要anywhere@MaximeHelenOP question-在按钮上单击,它将在新窗口中指向URL,其中target=“\u blank”。但我要做的是在新窗口中打开链接,并在上一个窗口中打开新的HTML页面。
-在我发布评论后,答案也被编辑了。现在看起来不错。最好避免嵌套交互元素,比如按钮内部的链接,反之亦然。除了是无效的HTML之外,这样的代码还可能会混淆浏览器应该首先触发哪个元素的操作。可以避免在加载和单击时添加事件侦听器,请参阅我的答案below@MaximeHelen它可以,但不应该。请参阅开发中关于内联事件处理的总体意见。不建议使用内联事件处理,无论它将保存多少字节的代码。@mplungjan不建议使用,因为评估是针对href处理的,并且本机函数是确定的。但是在这里,要执行的代码是硬编码的,因此由于标记和代码的分离,不建议使用w/eno-不引人注目的Sah React或Vue让我忘记了这条指导原则究竟为什么使用onmouseup而不是单击?此外,OP没有要求更换当前的电源page@mplungjan,onmouseup事件将在锚定标记单击事件发生后触发,。。。所以我们可以得到两个链接。。。新选项卡中的href以及在同一选项卡中打开的替换链接。onclick是相同的-效果完全相同-而且在手机上没有onmouseupexample@mplungjan,是的,你是对的,因为移动设备可以包含pointerup event.window.open,在Chrome、Edge、Firefox、IE11、iOS Safari中工作得很好。这并不是在回答问题。它不是打开新页面和更改现有页面