[問題] 一般瀏覽器與行動裝置瀏覽器

作者: linbob09 (累斃了)   2014-06-03 23:47:30
想請問的是,這兩個瀏覽器的差別到底有多大?
其實會問這個問題主要是在實作時碰到了一個問題
當我在使用HTML5的video標籤時
在一般的瀏覽器下是可以正常autoplay
例:
<video id="video" autoplay>
<source src="123.mp4">
</video>
但是在行動裝置上(如iphone或android手機平板之類的)都無法自動撥放
有查到解決的辦法與當初為何ios與android這樣做的原因,但是都無法成功

setTimeout("function(){ $("#video").play();}", 3000);←無效
用body onload去call function ←無效
似乎只有設一個click事件才能讓他播放
但是如果在一開始loading時去呼叫click的function還是會失敗
所以很納悶到底差別在哪裡與真正的解決方法為何,謝謝。
作者: Ayukawayen (亞布里艾爾發芽>//<)   2014-06-03 23:50:00
iOS基本上不能autoplay 一定要由使用者觸發才會播放因為有連線資源的問題 所以製造商鎖起來了
作者: mmis1000 (秋月戀楓)   2014-06-04 00:31:00
我建議你不要這樣做,這是九成以上的人裝adblock的理由因為自動撥放真的很煩人至於為啥直接呼叫沒用,應該是有檢查callstack吧大概限制成只有進入點是使用者自己觸發事件時才允許
作者: alog (A肉哥)   2014-06-04 00:43:00
mobile device 如果到處都可以 auto play耗電會非常差另外請善用ios device的網頁檢視器 通常都會有console會報log給你知道
作者: mmis1000 (秋月戀楓)   2014-06-04 02:21:00
剛剛試過,手機的chrome會默默失敗,不會顯示訊息firefox則會允許

Links booklink

Contact Us: admin [ a t ] ucptt.com