今天做了一个ajax发送请求刷新验证码的任务,本来在其他浏览器下都ok,但是就是在ie6下点击换一张的a元素的时候去无法刷新,图片总是不显示。点击图片刷新验证码却可以,2个元素绑定的事件都是一样的。但是ie6下就是不行,图片如下:
后来我在后面加了一个随机数 Math.random();但是还是不行,最后把这个发送请求的方法放在了setTime里面延迟0.5秒执行也不行,当时感觉很奇怪,后来没办法只有把a标签换成了b或者span标签,然后用脚本和css控制样式让它使用起来像是a标签的效果,然后才可以发送请求,我当时用debugbar测试了发现每次点击a标签之后总是返回错误,后来百度了之后才知道如果要用a标签的花必须要在执行完之后写一个return false才行。代码如下
//验证码src
var codeSrc = fish.dom("#showCodeImg").src; //初始刷新验证码 fish.one("#showCodeImg").on("click", function () { ShowCodeImg(this); }); //刷新验证码src function ShowCodeImg(obj){ fish.dom(obj).src = codeSrc + "&" + Math.random(); } fish.one(".c_change").on("click",function(){ // setTimeout(function(){ fish.dom("#showCodeImg").src = codeSrc + "&" + Math.random(); // },0) });