<img src="generate.php" id="captchaimg"/>
<a href="javascript:void(0);" onclick="document.getElementById('captchaimg').src='generate.php';">Not readable? Change code.</a>
我知道这个问题已经被问过但是其中描述的方法对我不起作用或者我不知道正确的使用方法。我已经将代码用作内联,并且创建了一个普通的 Javascript 函数,尽管我在单击时检查了 JQuery 代码,但图像未加载到 Firefox 中,而当我单击“不可读”时,验证码图像在 Chrome 上正确加载所以请帮助我的 friend 解决这个问题提前谢谢老兄!!!
最佳答案
我认为您上面的示例可能无法正常工作,因为当您刷新验证码时,您将 src
属性设置为 generate.php
,这与它完全相同之前。 Firefox 可能认为不值得重新获取图像,因为使用了相同的 URL。为了解决这个问题,我将 src
设置为空,然后将其设置回 generate.php
。
最好的做法是从您的 HTML 元素中取出更复杂的 Javascript 并将它们移动到自己的脚本中。作为一个基本示例,您可以尝试这样的操作:
<img src="generate.php" id="captchaimg" />
<a id="regenerateLink" href="#">Not readable? Change code.</a>
<script>
var captcha = document.getElementById('captchaimg');
var regenerateLink = document.getElementById('regenerateLink');
regenerateLink.onclick = function() {
captcha.src = "";
captcha.src = "generate.php";
};
</script>
请注意这里还有很多需要改进的地方,我不认为代码生产已经准备就绪,但这是一个开始:)
关于javascript - document.getElementById 在 Firefox 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29345140/