我使用以下javascript(由m59在this上一个回答中提供)来隐藏链接的目的地,该链接通常在鼠标悬停在链接上时显示在浏览器窗口的底部:
<div>
<a data-href="http://www.google.com/"> LINK </a>
<script type="text/javascript">
var anchors = document.querySelectorAll('a[data-href]');
for (var i=0; i<anchors.length; ++i) {
var anchor = anchors[i];
var href = anchor.getAttribute('data-href');
anchor.addEventListener('click', function() {
window.location = href;
});
}
</script>
</div>
这很好用,但我想在新标签页中打开链接。我如何更改脚本才能这样做?
我尝试使用window.open('href','_blank');
代替window.location = href;
,而不是{
"sender":{
"id":"USER_ID"
},
"recipient":{
"id":"PAGE_ID"
},
"timestamp":1458692752478,
"message":{
"mid":"mid.1457764197618:41d102a3e1ae206a38",
"text":"hello, world!",
"quick_reply": {
"payload": "DEVELOPER_DEFINED_PAYLOAD"
}
}
}
。
答案 0 :(得分:0)
除非我遗漏了某些东西,否则最明显的事情是为该锚添加一个目标:
<a data-href="http://www.google.com/" target="blank"> LINK </a>
答案 1 :(得分:0)
这是如何做到的(尝试使用代码,stackoverflow阻止新选项卡和链接)
var anchors = document.querySelectorAll('a[data-href]');
for (var i=0; i<anchors.length; ++i) {
var anchor = anchors[i];
var href = anchor.getAttribute('data-href');
anchor.addEventListener('click', function() {
window.open(href,'','');
});
}
<div>
<a data-href="http://www.google.com/"> LINK </a>
</div>
答案 2 :(得分:0)
你可以看到here,window.open的语法是:
var window = window.open(url, windowName, [windowFeatures]);
因此,要在新标签中打开链接,您应该使用以下内容:
var myNewTab = window.open(url, '_blank');
如果您将窗口打开为'_blank'
,它将无效答案 3 :(得分:0)
你试过window.open(href)
吗?
即。在您的示例中,href
是一个字符串(它周围有单引号)而不是变量。
答案 4 :(得分:-1)
为什么不使用onclick事件处理程序来重定向用户?
<a href="" onclick="onClick">link</a>
function onClick(e) {
e.preventDefault();
document.location.href='www.google.ca';
}