Target =“_ blank”vs window.open

时间:2014-06-30 17:03:35

标签: javascript html hyperlink

我正在开发一个用户输入一些输入的应用程序,他们不应该在点击共享链接时离开页面,例如Facebook分享链接:

<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fwww.example.com%2F">Share on Facebook</a>

我知道将弹出窗口用于此类链接是很常见的。但是它比简单的target="_blank"属性有什么优势吗?你如何比较这两种方法,哪种方法在这种情况下是正确的做法?

3 个答案:

答案 0 :(得分:4)

Window.open需要Javascript并且可以被弹出窗口阻止。但是,它确实有其他选项(宽度,高度,选项等)。在移动浏览器上,许多选项都将被忽略。

最好使用_blank,因为它尽可能是HTML原生的。

答案 1 :(得分:4)

这取决于您使用的HTML版本以及您是否关心W3C验证。在HTML5中,您可以使用target="_blank",但使用以前的XHTML版本,您不得不使用JavaScript来获得相同的结果,并使您的网站W3C有效。我认为这是许多人使用这种方法的唯一原因。

当然使用Javascript使得用户必须启用JavaScript才能在新窗口中打开此链接(并使用adblocks / ghostery和类似插件制作阻止一些JavaScript)所以我想如果你只能,你应该使用{{1 }}

答案 2 :(得分:2)

如果您希望它与有弹出式窗口和禁用JavaScript的人一起使用,请使用target="_blank"