国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

DOMException: The play() request was interrupted

OnlyMyRailgun / 4543人閱讀

摘要:最近在使用時遇到一個問題,那就是在總是報錯報錯除了瀏覽器,其他瀏覽都沒有報錯。后來了一下發現是因為調用的時候,音頻文件還沒有加載完成的問題。例子通過這兩個例子,我在想用低版本還是不兼容。然而卻被現實啪啪的打臉。

最近在使用audio時遇到一個問題,那就是在Chrome DevTools 總是報錯:

Uncaught (in promise) DOMException: The play() request was interrupted by a call to pause().

or

Uncaught (in promise) DOMException: The play() request was interrupted by a new load request.

報錯:

除了google瀏覽器,其他瀏覽都沒有報錯。 而且雖然報錯,其實還是能正常播放聲音,本來想就這樣了,但是看到有報錯??傆幸稽c膈應。

后來google了一下 發現是因為調用play()的時候,音頻文件還沒有加載完成的問題。

之前代碼:

知道了是這個問題,那么如何修復呢?

例子:Autoplay


通過這個例子已經能夠解決問題,

但是新的問題來了,promise在低版本的瀏覽器不支持。


Chrome 50才有 video和audio才在play()上面返回了一個promise;

然后我又看到了這個例子。

例子2:Fetch & Play



通過這兩個例子,我在想 用Fetch低版本還是不兼容。于是乎我就想用$.ajax, 因為他的本意不就是一個異步么。先用阿賈克斯請求音頻文件,然后在回調里面調用play方法不就可以了么。

然而卻被現實啪啪的打臉。還是不行 報同樣的錯。說明此路不通啊。

沒辦法我就只能再請教google, 然后我在GitHub上面看到有人這樣說;

發現這也可以。于是我就把我的代碼改了一下:

// 播放聲音
function playVoice(src, domId) {
    var $dom = $("#" + domId)
    if ($.browser.msie) {
        // IE用bgsound標簽處理聲音

        if ($dom.length) {
            $dom[0].src = src;
        } else {
            $("", {src: src, id: domId}).appendTo("body");
        }
    } else {
        // IE以外的其它瀏覽器用HTML5處理聲音
                if ($dom.length) {
                     $dom[0].load();
                    setTimeout(function() {
                        $dom[0].play();
                    }, 200);
                } else {
                    $("

大家一看也就明白了,就是先load,然后異步去調用play,但是我用0,在我刷新快,頻繁的時候還是會報錯、于是我就改成200ms,至于延時器里面的200ms,我也是自己大概寫了一個數字.

以上問題暫時解決。

參考文章:
(https://developers.google.com...

(https://github.com/sampotts/p...

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/104087.html

相關文章

  • 2017-06-15 前端日報

    摘要:前端日報精選十問幫你理清前端工程師及大前端團隊的成長問題譯讀完細則之后學到的件事掘金怎么寫一個組件庫一眾成翻譯還有這操作一個能生成思維導圖的開源搜索引擎知乎專欄中文前端推薦第天值得收藏的基礎教程知乎專欄第期沒有的一天轉載中回調地 2017-06-15 前端日報 精選 十問sofish:幫你理清前端工程師及大前端團隊的成長問題![譯] 讀完 flexbox 細則之后學到的 11 件事 -...

    Benedict Evans 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<