autoplay標籤在chrome中失效的問題

2021-10-03 21:29:20 字數 871 閱讀 5313

此時,肯定是需要js**來實現,其實在這裡用**實現也就一行**而已:

document.queryselector('.music').play();
運氣好,就直接成功了,想手動暫停**,可以使用下面的一行**:

document.queryselector('.music').muted = true;
詳細細節場景可以參看前端五子棋**。

但是如果運氣不好,就可能出現如下的介面顯示:

幸好這個exception挺良心,錯誤的最後面還給出了乙個連線,點進去看看:

這個頁面給出了好幾種解決方案。比如使用iframe標籤,預設設定瀏覽器為靜音模式然後再手動取消靜音,捕獲因此問題帶來的異常並在catch塊裡面進行操作等等。

有興趣的夥伴可以參照原本自行嘗試,這裡我就不多做介紹,因為這個頁面的所有方法也沒能幫我解決掉這個問題。

那麼問題到底出在哪呢?這也是為什麼我最開始說有一定幸運的成分。

首先,我們知道報錯是因為play()這個方法有問題,但是谷歌本身有不能支援autoplay,並且還無法修改谷歌對此標籤的預設設定,這就真的很腦殼疼。

直接給出答案吧,我這裡之所以報出這個錯誤是因為我在js檔案中直接呼叫此方法,而恰巧我在程式裡使用play方法都是在繫結的事件函式中呼叫能夠正常執行,真的很amazing!

iframe標籤在PC端的使用

隨著前端框架的崛起 各種元件化 模組化開發 然而我發現在pc端要考慮相容 自己琢磨著 在pc端怎麼吧乙個頁面做成乙個公共的部分 發現有個iframe標籤可以在頁面中巢狀 用法就是這麼簡單 需要乙個需要乙個src頁面位址 frameborder設定iframe邊框為空 scrolling清除滾動條 我...

mybatis中標籤在Mysql中的使用

mybatis中標籤在 mysql 中的使用 foreach屬性 屬性描述 item 迴圈體中的具體物件。支援屬性的點路徑訪問,如item.age,item.info.details。具體說明 在list和陣列中是其中的物件,在map中是value。該引數為必選。collection 要做forea...

canonical標籤在SEO優化中的作用詳解

我們都知道靜態鏈結是有利於seo的,但事實上並不是所有 都能很好的進行seo操作,因為 程式的不同,生成的url也是不同,而url還分動態url和靜態url,有的程式是直接生成靜態html頁面,而有的是動態程式進行偽靜態後的html鏈結,而進行了偽靜態處理後勢必會造成乙個頁面有多個url可以訪問的情...