audio 标签 App 踩坑

场景:

#####使用 h5 audio 标签播放音频, 在pc端能播放, iOS和部分Android手机无法播放。

手机端为了限制audio标签自动播放,限制必须通过用户操作页面来触发audio播放,如touch,click事件。

解决方案:

1. audio 标签单例,页面中存在一个audio标签,通过更改src的方式,更改播放资源
2.  触发方式,iOS click不兼容;通过touch页面元素的绑定,在回调函数中直接操作audio.play/pause。
同时在iOS的默写版本需要提前load audio资源,此时touchstart load资源,touchend 播放资源。
3. 执行play/pause的回调方法, 不能在回调函数的nexttick 中,如在click 回调中无效
setTimeout(function(){audio.play()})
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • mobileHack 这里收集了许多移动端上遇到的各种坑与相对解决方案 工具类网站 HTML5 与 CSS3 技术...
    Zoemings阅读 11,568评论 0 12
  •   JavaScript 与 HTML 之间的交互是通过事件实现的。   事件,就是文档或浏览器窗口中发生的一些特...
    霜天晓阅读 8,855评论 1 11
  • 22、JQ的基础语法、核心原理和项目实战 jQ的版本和下载 jQuery版本 1.x:兼容IE6-8,是目前PC端...
    萌妹撒阅读 5,684评论 0 0
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,793评论 1 32
  • HTML标签解释大全 一、HTML标记 标签:!DOCTYPE 说明:指定了 HTML 文档遵循的文档类型定义(D...
    米塔塔阅读 8,635评论 1 41