var buttonColours = ["red", "blue", "green", "yellow"];
var gamePattern = [];
function nextSequence() {
var randomNumber = Math.floor(Math.random() * 4);
var randomChosenColour = buttonColours[randomNumber];
gamePattern.push(randomChosenColour);
$("#" + randomChosenColour).fadeIn(100).fadeOut(100).fadeIn(100);
var audio = new Audio("sounds/" + randomChosenColour + ".mp3");
audio.play();
}
nextSequence();
play()函数不起作用,它给出了错误“未捕获(promise中)DOMExc0019: play()失败,因为用户没有首先与文档交互。”
建议一些修复。
这是大多数现代浏览器的一项功能,用于防止网站开发人员的恶意/垃圾邮件行为。因此,网页基本上无法自动播放视频/音频,除非用户首先与网站交互(单击、悬停、点等)。
所以在你的例子中,当用户点击某个东西时,应该调用nextSequence()
。
document.getElementById("playbutton").addEventListener("click", nextSequence);