在加载 HTML 页面时阻止声音
Block sound in HTML page when it loads
我需要一些帮助,因为当我刷新/加载页面时,正在播放用户写入时的聊天声音。
我需要知道是否有可能使其仅在加载页面时播放。
上下文中的代码
var audioElement5 = document.createElement('audio');
audioElement5.setAttribute('src', 'sounds/chat.wav');
audioElement5.volume=1.0;
如果我将文件放在代码为脚本的位置.js则在 head 部分中播放声音,如果我将其放置在我创建声音的位置上方,它们将在用户编写内容时播放一个,但是当我加载页面时,我收到以下错误:
未捕获的引用错误 audioElement5 未定义(匿名函数)
所以我需要的解决方案是在加载 html 或类似的东西时不播放声音。
我也像这样测试:
在我的身体之前,我设置了这个:
<script>
audioElement5.muted = true;
</script>
在我的页脚上方:
<script>
audioElement5.muted = false;
</script>
但没有用。
您应该将代码移动到 windows onload 函数,这样它只会在页面加载时触发。
windows.onload = function(){
// move your code here
}
或
您可以将代码放在如下函数中:
function loadAudio(){
// your code
}
并在/body 之前调用它
<script>loadAudio();</script>
</body>
希望这有帮助吗?
在 jQuery 中,你可以执行以下操作:
function loadAudio() {
// Your javascript code here.
}
$(document).ready(function() {
loadAudio();
});
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- 如何在生成下载文件时显示加载动画
- HTML/JS github页面项目没有't在使用firefox运行时加载图像或声音
- 在显示页面之前使用 jquery ajax 加载图像和声音
- 预加载声音文件
- 动态加载midi.js声音字体
- 如何以块的形式播放加载的声音
- 在开始动画之前预加载所有声音和图像
- 声音管理器 2 SWF 加载问题
- 当我在 Javascript 中加载相同的声音 n 次时,浏览器会只是从服务器获取声音,然后将其复制到 n 个不同的对象
- SoundJS如何/可以加载其他预加载程序加载的声音文件(如Pixi.Loader.Loader())
- PhoneGap LimeJS声音未加载
- 使用Javascript和/或HTML5预加载声音
- Internet explorer中的预加载声音createjs-preloadjs不起作用
- 使用soundmanager v2预加载声音
- 执行函数时,只加载图像/声音,Jquery
- HTML//jQuery-重新加载后静音所有音频声音10秒
- soundManager2:无法从Url数组预加载我的所有声音
- 在加载 HTML 页面时阻止声音
- 加载声音文件暂停,然后在几秒钟后开始播放