A链接href="javascript:void(0);"在IE6下导致js跳转失败
From:http://hi.baidu.com/lane727/blog/item/1fb2698d4a0f9ae2f01f36b3.html
经常有如下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属性中的代码,这样就可以让浏览器顺利跳转。
?