我已经为我的论坛制作了这个脚本,并且想知道是否有人可以指导我如何让浏览器播放音频文件,如果用户悬停在类style113
上,但它必须给他们发出警告提醒,说"audio is about to play"
如果他们按下了应该播放的警报,如果他们按下取消它不应该播放。我怎样才能做到这一点?这里是剧本我到目前为止有:播放悬停的音频文件
my script has been removed
我已经为我的论坛制作了这个脚本,并且想知道是否有人可以指导我如何让浏览器播放音频文件,如果用户悬停在类style113
上,但它必须给他们发出警告提醒,说"audio is about to play"
如果他们按下了应该播放的警报,如果他们按下取消它不应该播放。我怎样才能做到这一点?这里是剧本我到目前为止有:播放悬停的音频文件
my script has been removed
您可以使用下面的代码:
var elems = document.getElementsByClassName("style113");
for(i in elems) {
elems[i].addEventListener("mouseover", function() {
if(confirm(" %%% CONFIRMATION MESSAGE %%% ")) {
// %%% CODE TO PLAY SOUND %%%
}
});
}
作用:
style113
mouseover
confirm()
弹出(有两个按钮,一个确认,一个取消)confirm()
方法返回true
(如果单击肯定按钮),然后播放声音UPDATE按在下面的意见OP请求,您可以在for
循环这个代码添加到您的特定代码:
document.getElementsByClassName('style113')[x].addEventListener("mouseover", function() {
if(confirm("audio is about to play")) {
// %%% CODE TO PLAY SOUND %%%
}
});
我还建议您使用更好的缩进实践清理源代码。此外,请避免提出过多的DOM请求(例如,重复性为document.getElementsByClassName()
),而不要注意caching DOM requests。
我在哪里放置?什么行 – ThePlacid
@ThePlacid我会扩大我的答案,包括该信息。稍等片刻。 –
@ThePlacid编辑。您可以将事件侦听器(较低的代码)放在两个循环中,就像所有以'document.getElementsByClassName()'开头的其他行一样。另请参阅我对DOM请求的评论。 –
我的回答对你有帮助吗?如果是这样,请确保接受它(通过点击答案旁边的绿色复选标记)以向其显示帮助您的社区。如果没有,请申请更多帮助。 –