Here是我的页面,我有一个功能来刷新验证码(如果你点击“clicca qui”它应该改变图像)。我百分之百确定它在几个月前有效,现在它不会没有我改变任何东西。对函数的调用是<a href="javascript: refreshCaptcha();">
。我注意到虽然在iPhone上它有效。所以我认为这是某些浏览器不接受“javascript:”语法的问题。然后我将其更改为<a href="#" onclick="refreshCaptcha();return false;">
(就像现在一样,“直播”)。这没有任何改变,仍然可以在iPhone上运行(图像更改),在桌面浏览器上没有变化(尝试使用IE和Firefox)。
Firebug控制台没有说什么。
发生了什么事?
答案 0 :(得分:0)
我似乎无法找到原因,但在尝试获取像document.images[4].src
这样的src时会返回一个空字符串。它只发生在FF,所以我在那里更难过。但是,您可以使用.getAttribute("src")
访问图片来源,并使用.setAttribute("src", "value")
进行设置。
请尝试以下代码:
function refreshCaptcha(){
var img = document.images['captchaimg'];
imgSrc = img.getAttribute("src");
newImgSrc = imgSrc.substring(0,imgSrc.lastIndexOf("?"))+"?rand="+Math.random()*1000;
img.setAttribute("src", newImgSrc);
}
另外,请不要链接到您的网站。链接到小提琴是可以的,但只要您在网站上进行这些更改,您的问题将不再对社区有任何帮助。