js控制ios设备在微信打开网页时,自动播放音乐
实际情形:
今天在公司做一个微页的项目,涉及到在微信里面点击链接或者是扫描二维码,打开链接的时候,自动播放音乐。
这个功能是非常简单的,直接在HTML页面插入如下代码即可。
<audio src="1.mp3" autoplay="autoplay" controls></audio>
如果使用安卓手机进行访问页面的话,是没有什么错误的,音乐能正常自动播放。但是如果是使用ios设备访问页面的话,音乐是不能自动播放的。
原来是苹果公司考虑到用户可能是用手机流量访问的情况,为了用户流量着想,所以需要用户交互后才能播放。
但是我的这个项目要求网页,必须自动进行播放音乐,于是便有了下面的解决办法。
解决办法:
- 首先,我们要给页面中的
<audio>
标签添加一个id="bg-music"
。因为我们要在后面的js代码中,使用这个id="bg-music"
获取到<audio>
标签
<audio id="bg-music" src="1.mp3" autoplay="autoplay" controls></audio>
- 然后,我们将下面这些代码复制到自己的js代码中,就可以实现ios设备自动播放音乐。或者是赋值下面这些代码,粘贴到新创建的js脚本文件,然后在HTML页面引入该脚本文件即可。
// DOM中的内容加载完毕之后,调用函数 document.addEventListener('DOMContentLoaded', musicInWeixinHandler); function musicInWeixinHandler() { musicPlay(true); document.addEventListener("WeixinJSBridgeReady", function () { musicPlay(true); }, false); document.removeEventListener('DOMContentLoaded', musicInWeixinHandler); } function musicPlay(isPlay) { var media = document.querySelector('#bg-music'); if (isPlay && media.paused) { media.play(); } if (!isPlay && !media.paused) { media.pause(); } }

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
1-VVI-材料设计之-TabLayout上标签
[1].既然ViewPager和Fragment都总结完了,那就插一个材料设计中的TabLayout控件吧,这三者关系挺好 [2].TabLayout在上面就是曾经的ViewPager指示器,想当年都是自己封装来用,现在条件好了,安卓给了。 [3].引入包:implementation 'com.android.support:design:26.1.0' [4].在此之前,你应该知道ViewPager和Fragment的组合使用,如果不清楚,可以看一下:Fragment与ViewPager结合 TableLayout.gif 1.Activity的布局 <android.support.design.widget.TabLayout android:id="@+id/tl_tab" android:layout_width="match_parent" android:layout_height="@dimen/dp_48" android:background="@color/colorPrimary"> </android.support.design.widg...
- 下一篇
HelloCharts之饼状图详解
前言: 公司最近做的项目中含有查看每月收入支出的功能,而且是用饼状图来展示的,后来选择了hellocharts图表框架来实现这一效果,做完之后总结出来方便下次使用。 image 效果: image 如何使用: ●导入依赖: //build.gradle repositories { ... maven { url "https://jitpack.io" } } //app.gradle dependencies { compile 'com.github.lecho:hellocharts-android:v1.5.8' } ●布局引入: <lecho.lib.hellocharts.view.PieChartView android:layout_width="300dp" android:id="@+id/piechart" android:layout_gravity="center" android:layout_height="300dp" /> ●Activity中进行相应的设置: public class MainActivity extends AppCo...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Hadoop3单机部署,实现最简伪集群
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Windows10,CentOS7,CentOS8安装Nodejs环境