IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

IE6下经典的请求abort问题

PHPor 的Blog 2013-09-23 13:53:52 累计浏览 2,557 次
本机暂存

   摘自:http://www.cnblogs.com/shihao/archive/2012/06/22/2559042.html

IE6 a标签的请求被abort的原因

   最近项目中掉进IE6 a标签abort两次坑,第一次是a标签绑定一个事件,href='javascript:;'这样a标签触发了事件,切换验证码图片,结果验证码图片总是显示不出来,通过抓包显示状态为abort。其实这个的原因可以从IE6中a标签执行顺序说起,IE6中a标签执行onclick在执行默认事件(即href跳转)之前,当触发了绑定的事件之后,那么处理完事件之后,如果不return false或者阻止默认事件,则会继续执行href跳转,IE6会认为页面跳转到其他页面或者页面重新刷新,则abort之前onclick事件中的请求。

   所以当onclick时,做出的获取最新验证码图片的请求,会因为下一步href的触发而abort。同时,如果你在a绑定的事件中做ajax请求,那么也会被无情的abort。

IE6 a标签的请求被abort的解决方案

   解决的方法就是在onclick或者绑定事件中return false来阻止a标签跳转的默认事件。

   例如下面的代码:

<a href="javascript:void(0)" onclick="fn();return false;">Test</a>

   或者你也可以给a标签的href写成“#”,即当前页面的锚点,这样页面就不会跳转,自然不会abort请求。

   最好的方式还是两种都用,保险!

   其他参考资料:

   http://www.web92.net/758.html

   http://www.cnblogs.com/Ren_Lei/archive/2010/09/26/1836130.html

同分类推荐文章

  1. translateZ() (2026-06-25 21:18:56)
  2. translateY() (2026-06-25 21:17:56)
  3. translateX() (2026-06-25 21:16:01)

查看更多 前端 文章 →

建议继续学习

  1. JS如何实现响应滚轮(同时设置滚动条无效) (累计阅读 9,026)
  2. 解决IE6从Nginx服务器下载图片不Cache的Bug (累计阅读 8,357)
  3. Axure 实现网站登录的交互 (累计阅读 4,821)
  4. CSS让你的IE浏览器崩溃 (累计阅读 4,224)
  5. HTML5 Charset能用吗? (累计阅读 4,227)
  6. 获取Dom元素的X/Y坐标 (累计阅读 4,177)
  7. IE6下position:absolute相邻元素margin-top失效的bug (累计阅读 4,014)
  8. 一个IE6下重复加载的BUG (累计阅读 3,983)
  9. 让IE6支持min-width (累计阅读 3,802)
  10. IE6图片加载的一个BUG (累计阅读 3,707)