您的位置:首页 > Web前端 > JavaScript

javascript:void(0);在火狐、IE中也会跳转到新的页面问题

2017-08-21 14:54 337 查看
在项目中遇到一个奇怪的问题:

<a target="_blank"  href="javascript:void(0);">点我啊</a>


这样一段代码,在谷歌中点击a标签,并不会发生页面跳转,但是在IE和火狐则会跳转到一个空白页面。

问题原因

浏览器默认处理事件的顺序有差异。

Chrome顺序:onclick -> href -> target

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

解决方案

1.添加onClick事件,直接return false阻止之后浏览器默认事件的执行。

<a target="_blank"  onclick="return false" href="javascript:void(0);">点我啊</a>


2.直接去掉href属性

<a target="_blank">点我啊</a>


其实就是事件冲突导致的,只要保证不在target和href同时存在时,就不存在该问题。出现了该问题最好采用去掉href的方式,因为return false会阻止浏览器默认事件的执行,如果之后有用到的话会变得更麻烦。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  href a target 火狐
相关文章推荐