HTML5的audio标签设置了autoplay属性在手机端出现的问题


audio标签设置autoplay了,也设置了js的播放依然无法在手机端网页自动播放(微信),是否手机浏览器大都禁用了自动播放的功能,有没有其他接口

web前端开发 html5 html5-audio

加贺黑丝骑脸爽 9 years, 8 months ago

在Android的机子是可以实现自动播放的,在iOS的机子里没有办法,可以通过为页面绑定touchstart事件来实现播放

弹幕下D杀手 answered 9 years, 8 months ago

不仅仅是在微信里面无法自动播放,系统浏览器也是无法自动播放的,必须由用户交互触发。

(ps:低版本的安卓可以自动播放,小米1s等)

朱弓·斯卡雷特 answered 9 years, 8 months ago

我见过是document touchstart的时候触发,利用冒泡

shuin answered 9 years, 8 months ago

可以在页面载入自动播放,模拟点击是无效的

vicent answered 9 years, 8 months ago

Safari屏蔽了autoplay,必须由用户交互事件触发,因为autoplay在移动网络环境下可能会造成用户流量费剧增
Android的我不清楚,下面是引自Safari Reference

In Safari on iPhone OS (for all devices, including iPad), where the
user may be on a cellular network and be charged per data unit,
autobuffering and autoplay are disabled. No data is loaded until the
user initiates it. This means the JavaScript play() and load() methods
are also inactive until the user initiates playback, unless the play()
method is triggered by user action.

iOS 3.2之前还有一种fake的方式,可以通过js模拟一个点击事件来触发,但在之后的版本中就不再有效了

目前没有其他任何办法可以实现autoplay

撸过才算好男人 answered 9 years, 8 months ago

Your Answer