如何处理未捕获(承诺)的DOMException:play()请求被对pause()的调用中断了 [英] How to handle Uncaught (in promise) DOMException: The play() request was interrupted by a call to pause()

查看:654
本文介绍了如何处理未捕获(承诺)的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>

推荐答案

对于Chrome,他们更改了自动播放政策,因此您可以阅读

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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆