Javascript Firefox在事件呼叫中使用相同的randon号码
我有一个函数Javascript Firefox在事件呼叫中使用相同的randon号码,javascript,firefox,random,Javascript,Firefox,Random,我有一个函数randomPlay与事件onended关联,但在Firefox上,随机数总是相同的。在铬上没关系。任何人都可以解释为什么以及如何修复 function randomPlay(){ $("audio").html('<source src="'+srcArray[Math.floor(Math.random() * srcArray.length)]+'" type="audio/mpeg">'); document.getElementById('au
randomPlay
与事件onended
关联,但在Firefox上,随机数总是相同的。在铬上没关系。任何人都可以解释为什么以及如何修复
function randomPlay(){
$("audio").html('<source src="'+srcArray[Math.floor(Math.random() * srcArray.length)]+'" type="audio/mpeg">');
document.getElementById('audio').play();
}
现在一切都好了:)谢谢大家的帮助。
无论如何,我还找到了一个库来生成随机数,这是因为当页面加载时,生成器是种子。有关信息,请参阅本文:
这里:看这篇文章:这真的很奇怪,甚至MDN(MDN最权威的来源)也说它应该按时间来播种。非常感谢。我调试后发现随机性不是真正的问题。不管怎样,我发现这个很棒的库可以生成随机数。
<audio id="audio" autoplay onended="randomPlay();" ><source src="music.mp3" type="audio/mpeg"></audio>
<audio id="audio" autoplay onended="randonPlay();" src=""></audio>
function randonPlay(){
$("audio").attr("src",srcArray[Math.floor(Math.random() * srcArray.length)]);
document.getElementById('audio').play();
}