有些情况下,我必须在新窗口/标签中打开链接。有没有一种方法可以对严格的HTML有效?使用jQuery这样做是可以接受的,但我宁愿不只是将target="_blank"
隐藏在w / jQuery中,以便验证者不会看到它们。
答案 0 :(得分:6)
因为你说jQuery是允许的。
<a href="http://mysite.com" class="newWindow">Open in new window</a>
$('a.newWindow').click(function(e){
e.preventDefault();
window.open(this.href);
});
你也可以通过普通的JS来做到这一点。这样,您的HTML就不会遍布onclick
。
编辑 - 根据Ian的建议更新以使用e.preventDefault()
。
答案 1 :(得分:2)
这有效:<a href="test.html" onclick="window.open(this.href); return false; ">click me</a>
但是,附加事件处理程序的onclick
属性通常是不可维护的。附加事件处理程序的适当方法取决于您的javascript框架。 selector.click(function)
适用于jQuery。