• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Vic_Yip
博客园    首页    新随笔    联系   管理    订阅  订阅

IE6 7下JS动态加载图片不切换

    昨天遇到一个问题,a标签点击切换验证图,在IE6 7下不切换图片。

  网上的解释是,a标签在IE6 7下,会自动触发href的一个动作,截断了图片发送接收。最直接且兼容的方法是用其他标签代替a标签。

  经过测试,我的问题确实是没有返回图片,但是并不是标签带来的问题

1 <div><input type="text" name="randomCode"/></div>
2 <div><img src="01073-3.jpg" id="randomCode"/></div>
3 <a href="javascript:changeRandomCode();">摄摄</a>
4 <script>
5     function changeRandomCode(){             
6     document.getElementById(
"randomCode").src="01073-2.jpg"; 7 } 8 </script>

  罪魁祸首是上一个div里面 name = "randomCode" ,具体文献可见http://www.w3help.org/zh-cn/causes/SD9001;

  修改代码如下:

<div><input type="text" name="randomCode"/></div>
<div><img src="01073-3.jpg" id="randomCodeImg"/></div>
<a href="javascript:changeRandomCode();">缓一缓</a>
<script>
     function changeRandomCode(){
          document.getElementById("randomCode").value = "11111";
     }
</script>

 

  在IE6 7 下,结果是点击之后输入框的内容显示为 11111,这说明了在IE6 7 下,document.getElementById()可以取name作为Id,这就表明name与id最好不要一样,避免出现这Bug。

  

posted @ 2013-01-08 15:30  vic.ye  阅读(287)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3