音频
1.给document绑定一个touchstart事件,当用户滑动屏幕的时候,触发音频的播放
2.但是如果不使用jQuery,也可以给document绑定一个click事件,这样也就解决了
1 2 3 4 5 6
| var autoplay = function(){ document.getElementById('media').load(); document.getElementById('media').play(); } $(document).one("touchstart",autoplay);
|
视频
1.同样也是给document绑定一个touchstart事件,当用户有操作的时候触发播放
2.之所以是这样是因为iOS系统有个保护机制,禁止自动播放音频,视频,从而保护用户的流量
去除视频在iOS环境下自动全屏
只需要给video添加一个webkit-playsinline = ‘true’属性即可
视频添加poster
1.可以使用原生的poster属性添加,但是这个在Android手机上兼容有问题
2.在video上放个遮盖层,用来放poster
html
1 2 3 4
| <div class="mian"> <video src="./testaudio.mp4" id = 'st' webkit-playsinline="true" controls></video> <div class = 'poster'></div> </div>
|
JS
1 2 3 4 5 6 7
| var ss = document.getElementById( 'st' ); document.addEventListener( 'touchstart', function(){ document.querySelector('.poster').style.display = 'none'; ss.style.width = '100%'; ss.play(); } )
|
Css
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| #st { width: 1px; height: 100%; } .main { position: relative; } .poster { width: 100%; height: 200px; background: url( './poster.jpeg' ) no-repeat center / 100% 100%; position: absolute; top: 0; left: 0; }
|