Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

JavaScript: 和 _blank 同时存在的A标签行为

  href属性是A标签的必要属性,我们经常会对不需要任何页面跳转的A标签的href属性添加“JavaScript:”字样,这可以阻止页面真正跳转。但是A标签还有一个target属性,当设置成_blank时会在新选项卡中打开页面,那么这两种情况同时存在时A标签应该如何处理?
  现在我们有一个这样的A标签,那么到各浏览器上试试吧~
<a href="JavaScript:location.href;" target="_blank">
  test
</a>
  Chrome、Opera、Safari等webkit系的浏览器都不会打开新页面,而IE和Firefox上就会在新页面打开。一些双核的国产浏览器在使用webkit内核时做webkit的行为,使用IE内核时做IE的行为。
  而且,在新页面打开的情况下,URI中带的代码location.href会在新页面执行,而不是在当前页面执行。IE和Firefox的区别在于,这个location.href代码,IE得到的是跳转后的URI"JavaScript:location.href;",而Firefox得到的是"about:blabk"

  其实规范中是有相关说明的,不过一大堆概念关联太密切不太容易分析。我也不知道到底何种行为才是正确的。其实对于这些浏览器行为,我觉得webkit的比较能让我接受吧。
网名:
3.80.32.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^