javascript - 如何使按钮在 JavaScript 的新选项卡中打开链接?
问题描述
我想创建一个<button>
单击时将在新选项卡中打开 URL 的 URL。
这在纯 HTML 中很容易实现,但问题是它<button>
是动态生成的,因此必须在 JavaScript 中完成。
<button>
这是我迄今为止使用 JavaScript 和 HTML DOM创建的代码:
<body>
<div id = 'only_div'>
</div>
<script>
var btn=document.createElement("button");
btn.innerText = "Click me";
document.getElementById("only_div").appendChild(btn);
</script>
</body>
在这个现有代码中,我只想添加一点,当单击时,URL(例如http://www.stackoverflow.com
)将在新选项卡中打开。
解决方案
您可以将click
事件侦听器添加到按钮,addEventListener()
然后在触发时window.location.replace()
用于重定向。
<body>
<div id = 'only_div'>
</div>
<script>
var btn=document.createElement("button");
btn.innerText = "Click me";
btn.addEventListener("click", ()=>{
window.location.replace(URL);
});
document.getElementById("only_div").appendChild(btn);
</script>
</body>
对于新标签使用:
window.open(URL, '_blank');
文件:
推荐阅读
- bash - 为什么参数扩展在 Makefile 中不起作用?
- macos - MS-OFBA 不适用于 Office 2016 for Mac
- wordpress - Woocommerce 更改延期交货消息的颜色
- java - 在 ServerHelloDone 之后不会发生 ClientKeyExchange
- pointers - 如何复制结构并取消引用所有指针
- c# - 无法从 Settings.settings 文件中读取连接字符串
- scala - Akka Streams:连接初始化资源的流
- 7zip - 如何执行带有参数的 7zip sfx 创建的 exe
- php - 从表单中的 Echo'ed 值超链接到文件
- vue.js - 有没有办法在 Vuetifys 列表中添加额外的行?