小程序退出后音乐还会播放解决方法

<script>
var hidden = "hidden";
  
	//各个浏览器属性兼容
	if (hidden in document)
		document.addEventListener("visibilitychange", onchange);
	else if ((hidden = "mozHidden") in document)
		document.addEventListener("mozvisibilitychange", onchange);
	else if ((hidden = "webkitHidden") in document)
		document.addEventListener("webkitvisibilitychange", onchange);
	else if ((hidden = "msHidden") in document)
		document.addEventListener("msvisibilitychange", onchange);

	else if ("onfocusin" in document)
		document.onfocusin = document.onfocusout = onchange;

	else
		window.onpageshow = window.onpagehide = window.onfocus = window.onblur = onchange;
		
		function onchange(evt) {
                        if (document[hidden]) {
                            $('#audio').removeClass('play');
                            document.getElementById("bgm").pause();
//                            document.title = "false";
                        } else {
//                            alert('显示');
                            setTimeout(function () {
                                $('#audio').addClass('play');
                                document.getElementById("bgm").play();
//                                document.title = "true";
                            },100);
                        }
	}
</script>

我也遇到了这个问题,ios下关闭小程序还会继续播放视频(其实你下滑状态栏可以看到有视频播放,不关闭会一直播放的),最后用了浏览器的visibilitychange 解决了(后台时暂停播放),具体代码如下。

var hiddenProperty ='hidden' in document ?'hidden' :
    'webkitHidden' in document ?'webkitHidden' :
    'mozHidden' in document ?'mozHidden' :
     null;



if (hiddenProperty) {
    var visibilityChangeEvent = hiddenProperty.replace(/hidden/i,'visibilitychange');

    var onVisibilityChange =function() {

    if (document[hiddenProperty]) {

        !MpMovie.video.paused && MpMovie.video.pause();

    }

};

document.addEventListener(visibilityChangeEvent, onVisibilityChange);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值