H5中音频视频的自动播放以及同层播放问题

自动播放

讲真,真的很烦这个自动播放的问题,移动端是不允许自动播放的啊,但是客户就是想让自动播放,而且还不许有点击事件(哼)。但是我手里的项目很多都是在微信里转发和推送的,既然这样,我们可以在微信的ready事件里添加上video.play() or audio.play()的事件执行

首先咧,当然是要引入微信的js啦:

然后呢,重点来啦:

wx.ready(function () {
		audio.play();
		wx.onMenuShareTimeline({
			title: wechatShareText.title,
			link: wechatShareText.link,
			imgUrl: wechatShareText.image,
			success: function () {
			}
		});

		wx.onMenuShareAppMessage({
			title: wechatShareText.title,
			desc: wechatShareText.description,
			link: wechatShareText.link,
			imgUrl: wechatShareText.image,
			type: '',
			dataUrl: '',
			success: function () {
			}
		});
	});

完美解决哈哈哈

视频同层播放

这个网上有很多的介绍吼,就不多啰嗦了,直接粘过来前辈的好了(我这么懒...),以下:

微信在video标签上新增了一些x5的私有属性,分别是:

  1. x5-video-player-type
    启用同层播放。取值固定为'h5'

  2. x5-video-player-fullscreen
    是否全屏。取值为'true''false'

  3. x5-video-orientation
    视频方向。取值分别为'landscape''portrait'或者'landscape|portrait',分别对应横屏、竖屏及自动旋转(这个应该用的少)。

不过有一点需要注意的是,这些都是x5的私有属性,仅适用于Android平台。而跟iOS平台相关的,则是这几个属性:

  1. airplay

  2. x-webkit-airplay

  3. playsinline

  4. webkit-playsinline

其中最后两个是iOS平台下的内联播放属性,都是布尔属性,不需要赋值(存在即是true);前两个是iOS平台下airplay的相关属性(说实话我现在也没搞明白为什么网页需要airplay属性),取值为'allow''deny',通常保险起见用'allow'就可以。

以上--摘自 点击打开链接 https://segmentfault.com/a/1190000008782550

180605更新:

.play()方法!!只能再行在用户的操作之后!!!比如点击上滑下滑什么之类的动作!!!

你可能感兴趣的:(H5)