如何处理未捕获(承诺)的DOMException:play()请求被对pause()的调用中断了 [英] How to handle Uncaught (in promise) DOMException: The play() request was interrupted by a call to pause()
本文介绍了如何处理未捕获(承诺)的DOMException:play()请求被对pause()的调用中断了的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
下面是我在aspx页面中的代码,该代码允许在浏览器中播放wav格式的音频,但是使用我当前的代码,我无法在Chrome浏览器中播放wav音频,但在Firefox中可以使用.我该如何处理此异常?
Below is my code in aspx page to allow playing audio's of wav format in the browser but with my current code I am unable to play wav audios in Chrome browser but it works in Firefox. How can I handle this exception?
<script>
window.onload = function () { document.getElementById("audio").play(); }
window.addEventListener("load", function () { document.getElementById("audio").play(); });
</script>
<body>
<audio id='audio' controls autoplay>
<source src="Sounds/DPM317.wav" type="audio/wav" />
Your browser does not support the audio element.
</audio>
</body>
推荐答案
For Chrome they changed autoplay policy, so you can read about here:
var promise = document.querySelector('audio').play();
if (promise !== undefined) {
promise.then(_ => {
// Autoplay started!
}).catch(error => {
// Autoplay was prevented.
// Show a "Play" button so that user can start playback.
});
}
这篇关于如何处理未捕获(承诺)的DOMException:play()请求被对pause()的调用中断了的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文