lostexin
lostexin
  • 发布:2017-09-06 21:10
  • 更新:2017-09-06 22:27
  • 阅读:4117

webview页面切换不能触发visibilitychange事件,这是什么原因

分类:MUI
<div class="u-bgm f-clearfix">  
            <i class="fa fa-bell-o" aria-hidden="true" title="音乐"></i>  
            <div class="u-pop-box">  
                <p>开/关音乐</p>  
            </div>  
            <audio loop autoplay class="u-bgm-player">  
                <source src="sounds/bgm3.mp3" type="audio/mp3">  
                <source src="sounds/bgm2_AAC.ogg" type="audio/ogg">  
                <p>您的浏览器不支持audio标签!</p>  
            </audio>  
        </div>  

// 操作区域音乐播放  
            var mute = false;  
            $(".u-bgm").find("i").on("tap", function () {  
                if (!mute){  
                    $(this).removeClass("fa-bell-o").addClass("fa-bell-slash-o");  
                    $(".u-bgm-player").get(0).pause();  
                    mute = true;  
                }else {  
                    $(this).removeClass("fa-bell-slash-o").addClass("fa-bell-o");  
                    $(".u-bgm-player").get(0).play();  
                    mute = false;  
                }  
            });  

            // 页面隐藏时关闭音乐播放////Page Visibility API  
            var hiddenProperty = "hidden" in document ? "hidden" :  
                "mozHidden" in document ? "mozHidden" :  
                    "msHidden" in document ? "msHidden" :  
                        "webkitHidden" in document ? "webkitHidden" :  
                            null,  
                visibilityChangeEvent = hiddenProperty.replace(/hidden/i, "visibilitychange");  
            $(document).on(visibilityChangeEvent, function () {  
               if (!document[hiddenProperty]){  
                   document.title = "页面显示";  
                   // plus.nativeUI.toast("页面显示");  
                   if (!mute){  
                       $(".u-bgm-player").get(0).play();  
                   }else {  
                       $(".u-bgm-player").get(0).pause();  
                   }  
               }else {  
                   document.title = "页面隐藏";  
                   // plus.nativeUI.toast("页面隐藏");  
                   $(".u-bgm-player").get(0).pause();  
               }  
            });

我是想要切换到其它webview页面的时候关闭wishing页面的声音,切换回来的时候再播放...求大佬指导一下,,,,请求支援,,,

2017-09-06 21:10 负责人:无 分享
已邀请:
二八中医

二八中医

你应该监听的是webview的事件,而不是document,

  • lostexin (作者)

    怎么说?似乎还是不行,而且没探测到这个webview对象....

    2017-09-06 23:28

  • 二八中医

    plus.webview.currentWebView()获取当前webview对象,你可以把webview对象看成是document的上级容器,webview切换,触发的是webview的事件,具体查看webview的5+API

    http://www.html5plus.org/doc/zh_cn/webview.html

    2017-09-07 09:15

  • lostexin (作者)

    回复 二八中医:好的,谢谢,我试一下

    2017-09-07 16:59

要回复问题请先登录注册