Mar*_*rio 11 html5 mp4 android mobile-safari mobile-chrome
我有这个代码在html5页面播放视频:
<video autoplay loop id="bgvid">
<source src="video-background.mp4" poster="/poster.png" type="video/mp4">
</video>
Run Code Online (Sandbox Code Playgroud)
问题是它不适用于移动Chrome(Android手机)和手机游戏(iPhone).但它适用于桌面上的"每个"浏览器(使用Safari,Chrome,Firefox测试)以及移动版Firefox(Android手机).
我该如何克服这个问题?
编辑: 添加此代码:
var myVideo = document.getElementById("bgvid");
function playVid() {
myVideo.play();
}
function pauseVid() {
myVideo.pause();
}
Run Code Online (Sandbox Code Playgroud)
如果我添加一个触发函数playVid()的按钮就可以了.所以我认为问题在于自动播放.我试图用load事件触发函数,但它不起作用.
很简单,手机游戏中不支持autoPlay.请测试所有Android浏览器.
我使用一个技巧(或显示一些弹出窗口来使用事件):
var ONLYONETIME_EXECUTE = null;
window.addEventListener('load', function(){ // on page load
document.body.addEventListener('touchstart', function(e){
if (ONLYONETIME_EXECUTE == null) {
video.play();
//if you want to prepare more than one video/audios use this trick :
video2.play();
video2.pause();
// now video2 is buffering and you can play it programmability later
// My personal testing was maximum 6 video/audio for android
// and maybe 3 max for iOS using single click or touch.
// Every next click also can prepare more audios/videos.
ONLYONETIME_EXECUTE = 0;
}
}, false)
}, false)
// It is very usually that user touch screen ...
Run Code Online (Sandbox Code Playgroud)
评论:
我不明白ios html5政治.他们停止支持javascript控制台记录器(我现在要求:从版本5.1 ios).Auto play disabled,webrtc ...他们想要完美的设备.加载时自动播放可能很危险.在不久的将来,我希望在所有移动设备上激活完整的html5支持.
新的更新:我发现这是正面答案:
自从iOS 10发布以来,Apple已经允许静音视频自动播放:https://webkit.org/blog/6784/new-video-policies-for-ios/
| 归档时间: |
|
| 查看次数: |
21064 次 |
| 最近记录: |