Html Mozilla没有';t刷新音频标记文件。Mozilla';有问题的音频
我有一个代码,通过调用servlet自动生成captcha图像,并以HTML形式显示它。但是对于视力受损的人,我也想放一个音频文件。因此,我将servlet生成的验证码以字符串形式存储为会话属性,并根据该属性再次生成一个音频文件。因此,假设captcha为“c-a-t”,则相应地生成音频文件。现在的问题是,当我在Chrome中刷新页面时,验证码图像和音频都会被刷新,这很理想,但在Mozilla中,只有图像被刷新,而不是音频文件Html Mozilla没有';t刷新音频标记文件。Mozilla';有问题的音频,html,html5-audio,Html,Html5 Audio,我有一个代码,通过调用servlet自动生成captcha图像,并以HTML形式显示它。但是对于视力受损的人,我也想放一个音频文件。因此,我将servlet生成的验证码以字符串形式存储为会话属性,并根据该属性再次生成一个音频文件。因此,假设captcha为“c-a-t”,则相应地生成音频文件。现在的问题是,当我在Chrome中刷新页面时,验证码图像和音频都会被刷新,这很理想,但在Mozilla中,只有图像被刷新,而不是音频文件 <div class="formRow">
<div class="formRow">
<div class="field">
<img style="margin-left:91px; margin-top:-6px;" class="image" src="http:www.xyz.com/captchaServlet">
//the above line calls a servlet for the image
</div>
</div></br>
<div class="formRow">
<div class="field">
<audio style="margin-left:91px;" controls="controls">
<source src="http:www.xyz.com/getSound" type="audio/wav">
//the above line calls servlet for audio file
Your browser does not support this audio format.
</audio>
</div>
</div>
//上面这一行调用了一个用于图像的servlet
//上面这一行调用了用于音频文件的servlet
您的浏览器不支持此音频格式。
它可能正在缓存url。只需使用此选项即可使url唯一
<source src="http:www.xyz.com/getSound?rand=<?php echo rand(time()); ?>" type="audio/wav">
当我尝试在窗口中更改音频标记的源时。onLoad
功能无效。然而,当我在body
标记中编写脚本时,它就像一个符咒。这就是我使用的:
<script type="text/javascript">
if(navigator.userAgent=="Mozilla/5.0 (X19; Ubuntu; Linux i697; rv:10.0) Gecko/22222222 Firefox/16.0"){
var d = new Date();
var n = d.getTime();
document.getElementById("audiowav").src="http://abcd.com/getSound?rand="+n;
}
</script>
if(navigator.userAgent==“Mozilla/5.0(X19;Ubuntu;Linux i697;rv:10.0)Gecko/2222 Firefox/16.0”){
var d=新日期();
var n=d.getTime();
document.getElementById(“audiowav”).src=”http://abcd.com/getSound?rand=“+n;
}
所以基本上我是从@Shahil得到这个想法的。你的意思是,调用同一个URL实际上让Mozilla根本不调用该URL!!您可能是对的,但它不起作用..我也在每个窗口上更改源URl.onload()函数,但它不起作用。