a链接href="javascript:void(0);"或"javascript:;"在IE6下导致js跳转失败

 

经常有如下JS跳转写法:

 

<a href="javascript:void(0);" onclick="javascript:location.replace('http://www.baidu.com/');">test js location.replace()</a>

 

<a href="javascript:void(0);" onclick="javascript:location.href='http://www.baidu.com/';">test js location.replace()</a>

 

经测试,在IE6下上述两种JS跳转执行无响应,其它浏览器下均正常。

 

仔细分析,

 

猜测IE6下a链接的跳转会收到href属性中代码的影响,

 

上述代码的执行过程,貌似是先执行onclick事件中的代码,

 

而且是在onclick事件的回调函数返回true的情况下,

 

再执行href属性中的代码,

 

然后才作出跳转动作。

 

而正是void(0);代码阻止了浏览器跳转,

 

所以在onclick的代码最后,加上return false;让onclick回调函数返回false值,

 

以阻止执行href属性中的代码,

 

这样就可以让浏览器顺利跳转。

本文永久地址:https://sjolzy.cn/a-link-hrefquotjavascriptvoid0quot-or-quotjavascriptquot-jump-in-IE6-fails-under-the-leading-js.html

--EOF--

随机文章

添加新评论