`

【飞天奔月出品】小技巧:IE7 ,IE8 ,FireFox下,验证码不刷新 解决方法

阅读更多

参考js 版本: http://lf008.iteye.com/blog/628800

 

曾写了个精短的 验证码刷新 jquery版本 

 

	$j(".securityImage").live("click",function(){
		var src=$j(this).attr("src");
		$j(this).attr("src",src);
	});

 看上去很满意,浓缩就是精华

 

谁知,测试兼容性出来,“IE7 ,IE8 ,FireFox下,验证码不刷新”

 

一研究,发现 “由于js指定的src与原来图片的src相同,从ie7+ 、firefox不刷新验证码。 

 

 

现在 改成:

 

$j(".securityImage").live("click",function(){
		var selectorObj=$j(this);
		_doSecurityImage(selectorObj);
	});


/**
 * 
 * @param selectorObj 验证码 图片对象
 */
function _doSecurityImage(selectorObj){
	var _src=selectorObj.attr("src");
	//链接中是否有? queryString部分
	var _index=_src.indexOf("?");
	var isHasQuestionMark=_index!=-1;
	
	if(isHasQuestionMark){
		_src=_src.substring(0,_index);
	}
	var src=_src+"?time="+new Date().getTime();
	selectorObj.attr("src",src);
}

 

加了个 time 时间戳,就搞定了 

 

1
0
分享到:
评论
3 楼 飞天奔月 2013-03-26  
quitgame 写道
神逻辑:

因此从ie7起,firefox不刷新验证码。


这里的起,应该 理解成 "因此从ie7+,firefox ,不刷新验证码。"
2 楼 tntxia 2013-03-07  
相似的问题都是很容易碰到的。
1 楼 quitgame 2013-03-07  
神逻辑:

因此从ie7起,firefox不刷新验证码。

相关推荐

Global site tag (gtag.js) - Google Analytics