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属性中的代码,这样就可以让浏览器顺利跳转。
分享到:
相关推荐
3. **需要阻止链接默认行为时**:可以考虑使用`<a href="javascript:void(0);" onclick="javascript:goUrl('http://www.sina.com'); return false;">`的方式。 ### 四、注意事项 1. **避免过度使用JavaScript**: ...
<a href="javascript:void(null)">防止离开</a> ``` 通过使用`void(null)`表达式,可以确保点击链接不会有任何实际动作发生,从而避免用户误操作导致页面关闭。 #### 8. 自动换行和表格布局 为了确保表格内容在不同...
综上所述,虽然有多种方式可以在`<a>`标签中调用JavaScript方法,但推荐使用`<a href="javascript:void(0);" onclick="js_method();>`或`<a href="javascript:;" onclick="js_method();>`,它们兼顾了代码简洁性、...
在`void(0)`的情况下,虽然代码执行后返回0,但在IE6中,这可能不足以阻止链接的默认行为,即页面跳转或刷新。 为了解决这个问题,开发者可以采用以下几种策略: 1. **在`onClick`事件处理函数后添加 `return ...
本文将详细讨论在IE6中使用链接A标签(`<a>`)与JavaScript协议进行页面跳转时的一个常见问题,以及如何解决这个问题。 首先,我们经常使用链接A标签来模拟按钮,因为它带来了一些便利性,例如鼠标悬停时自动显示手...
然而,`href="javascript:void(0)"` 在某些旧版本的IE浏览器中可能引发问题,如导致GIF动画停止播放。为了避免这些问题,一个更推荐的做法是使用 `href="#"` 并在链接的 `onclick` 事件中添加 `return false`,这...
其次,使用`javascript:`协议会导致`window.onbeforeunload`事件不必要的触发,且在IE中可能导致GIF动画暂停。此外,W3C标准并不推荐在`href`属性中执行JavaScript语句。 2. **使用`onclick`事件与`void(0)`** 更...
2. **a href="javascript:void(0);" onclick="js_method()"** 这是最推荐的一种方法。`onclick`事件负责执行JavaScript函数,`void(0)`返回`undefined`,防止页面跳转。这种方法不会像第一种那样将JS方法暴露在...
"`:这是最常用的方法,但是这种方法在传递 this 等参数的时候很容易出问题,而且 javascript: 协议作为 a 的 href 属性的时候不仅会导致不必要的触发 window.onbeforeunload 事件,在 IE 里更会使 GIF 动画图片停止...
在JavaScript和HTML交互中,有时会遇到点击a超链接(`<a>`标签)后页面跳转无反应的问题。...通过使用`javascript:void(0)`和控制`onclick`事件的行为,我们可以确保在各种情况下都能实现预期的页面跳转效果。
因为在一些旧版本的浏览器(如文件中提到的IE6和IE7)中,如果<a>标签的href属性设置不正确,可能会导致JavaScript中的跳转函数无法正常工作。 文件中提到了一些不同的<a>标签的href属性设置方法: 1. href=...
本文主要探讨了在Internet Explorer(尤其是IE6)中遇到的一个典型问题:`href` 跳转失效,以及如何通过两种不同的方法来解决这个问题。 首先,问题的根源在于使用了`javascript:void(0)`作为`<a>`标签的`href`属性...
总结来说,在制作网页链接时,若希望点击链接后页面不执行默认跳转,可以考虑使用javascript:void(0)、多个井号"####"、设置href为空字符串""或在onclick事件中返回false等方法。而void是JavaScript中一个重要的操作...
链接(href)直接使用javascript:void(0)在IE中可能会引起一些问题,比如:造成gif动画停止播放等,所以,最安全的办法还是使用“####”。为防止点击链接后跳转到页首,onclick事件return false即可。 3.如果仅仅...
在`<a>`标签的`href`属性中使用`javascript:void(0)`,可以确保点击链接时浏览器不会尝试加载任何URL,因此页面状态保持不变。 然而,有些开发者认为使用`javascript:void(0)`并不是最佳实践,因为它涉及到内联...
在IE6中,如果`a`标签的`href`属性设置为`javascript:void(0)`或`javascript:`,`location.href`将无法正常跳转。这是因为`javascript:void(0)`阻止了页面的默认行为,导致页面无法通过`href`进行跳转。解决这个问题...
如果页面有滚动条,并且希望在点击链接时执行操作而不产生页面跳动,可以将`href`属性设置为`javascript:void(0)`。这将防止页面滚动到顶部,因为`void(0)`表达式没有返回值,所以不会有任何效果: ```html <a href...