在调霸哥的时候发现,使用如下的链接方式,在Chrome下阻止了a的默认事件–正常,但是在Firefox下却会打开一个新的空页面,根据资料和测试发现,IE下也有此问题。

1
<a href="javascript:;" target="_blank">点击</a>

后经查找,可如下解决:

  • 通过onclick阻止事件的默认行为:<a href="javascript:;" onclick="return false;" target="_blank">点击</a>
  • 直接删除:<a target="_blank">点击</a>

原因在于三款浏览器,对三个属性的处理顺序不同。

Chrome顺序:onclick -> href -> target
IE和Firefox顺序:onclick -> target -> href