用html5的audio标签写的web播放器,设置autoplay后在safari中访问时无法自动播放,可有什么解决方法?

发布网友 发布时间:2022-04-21 03:21

我来回答

5个回答

热心网友 时间:2023-11-04 22:32

那就写一句JS代码,网页加载好后使播放器播放。

<script>
window.onload() = function(){
    document.getElementById('player').play(); // player是audio标签的ID
}
</script>

热心网友 时间:2023-11-04 22:33

这个是浏览器兼容html5的关系,所以你还是等到safari较好支持html5的时候再做吧!或者换成其他的兼容性较好的方式来做吧!

热心网友 时间:2023-11-04 22:33

Safari屏蔽了autoplay属性。因为autoplay在移动网络环境下可能会造成用户流量费剧增。
iOS 3.2之前可以通过js模拟一个点击事件来触发,但在之后的版本中就不再有效了,Safari完全屏蔽了autoplay,除非用户自己点击播放,目前没有其他任何办法可以实现autoplay。

热心网友 时间:2023-11-04 22:34

监听用户DOM操作,通过js控制音频播放。。。。

热心网友 时间:2023-11-04 22:35

这一般是浏览器本身的*造成的,没法解决。
一般来说,这种情况在移动设备的浏览器上更加明显,可能是出于节省流量,提高访问速度的考虑。据我所知,一般在移动设备上,连安桌设备都是无法直接由代码控制自动播放的,需要用户主动操作,与页面交互后被动激活进行播放。
当然,解决方法还是有的。一类折中的方法就是,让用户不察觉到自己正在进行交互播放器的操作,比如将播放代码绑定到整个页面的点击事件上,这样用户无意识的点击屏幕,就会激活播放。但是想通过代码直接控制自动播放,常规情况下无法做到。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com