`
carge
  • 浏览: 50381 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

【转载】 IE6下链接onclick事件处理中的请求被aborted

 
阅读更多

【转载】http://blog.csdn.net/wangjj_016/article/details/5304784

开发中常使用<a>标签代替button,好处在于可以利用a:hover样式做mouseover效果,但下面的代码在IE6下就有问题,onclick中的请求被aborted。

<a href="javascript:void(0);" onclick="$('current').src='images/001.jpg';">切换图片</a>,IE6下图片不显示。

<a href="javascript:void(0);" onclick="MyJrjRelation.checkAttention();">关注此人</a>,IE6下请求失败。

 

点击链接时先触发onclick事件后执行href,这里的void(0)把onclick发送的请求给终止了。这个bugs在IE7中已经修复。

 

解决方法:

1. 不使用onclick,但必须保证处理函数不返回值,否则浏览器将清空页面,只显示函数的结果。如果checkAttention返回false,浏览器中就会显示false。

<a href="javascript:MyJrjRelation.checkAttention();">关注此人</a>

 

<a href="javascript:void(MyJrjRelation.checkAttention());">关注此人</a>   void返回undefined;

 

2. 在onclick上加return false阻止浏览器执行href。href属性还是必须的,否则链接就样式失效了。

<a href="javascript:void(0);" onclick="MyJrjRelation.checkAttention();return false;">关注此人</a>

 

总结来说<a href="javascript:void(0);" onclick="MyJrjRelation.checkAttention();return false;">的兼容性最好。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics