微信環境下video標籤不顯示poster封面的問題

頁面直接寫了video元素像這樣:

<video src='...' controls poster='.../img.jpg' />

在瀏覽器看着封面顯示正常,但是在ios的微信中打開,封面卻不顯示,完全是黑的。又看了下安卓的微信環境,沒有問題,正常顯示。

此時將代碼實現方式改爲:

<video controls="controls" poster="img/poster.jpg" >
    <source src='...' type="video/mp4">
</video>

這樣,如果你的src是固定的,比如 src='http://...', 這樣寫的,那現在ios跟安卓應該都不會有問題了。如果你的src是動態獲取到的,然後才綁定到 source 的src上,vue什麼的雙向綁定應該不會出問題,如果是純js代碼賦值,比如用jq的$("#video").attr('src',videoUrl);  這個時候就會出問題,如果 ‘video’ 這個id在source上,安卓的視頻就播放不了了,如果在video標籤上,ios的poster又顯示不出來了。

  這時可以用,直接設置video內html的方式做(id在video標籤上),

var videoUrl = '...'
let v = document.getElementById('video')
v.innerHTML=`<source src=${videoUrl} type="video/mp4">`

這樣就解決了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章