百度糯米app中关闭网页或窗口的方法,99%的人都不知道,网上也找不到

黄舟
黄舟 原创
2017-02-09 15:48:33 1901浏览

前端时间我们公司做了一款使用百度钱包的移动网页支付进行支付的产品,用户通过百度钱包、百度糯米扫描我们

产品的二维码,选择商品,点击支付将会自动调用百度钱包进行支付,支付成功后返回成功页面,在我们的成功页面有关闭

网页按钮,点击关闭按钮或者返回按钮将会关闭页面。

在百度钱包中使用百度轻应用的BLightApp.closeWindow() 方法可以关闭,但是在百度糯米中,按道理可以使用呀,

但是根本就不行,改成传统的window.close()也不行。当时我们在网上搜索和百度糯米的官网中,都没找到解决方法。后来

通过几经周折联系上了百度糯米的相关技术才找到解决方法。

解决方法很简单就是把跳转地址设置为bainuo://home就可以了。

第一种:点击按钮关闭页面

1044.png

点击按钮关闭页面

如图,点击按钮,将会关闭页面,代码如下:

<center><a href="bainuo://home" ><button style="width:200px;height:50px;font-size:16px;">点击按钮关闭</button></a></center>

第二种:点击app返回按钮或手机的后退键关闭页面

1045.jpg

点击app返回按钮或手机的后退键关闭页面


如图,点击红色框里面的“<”按钮或手机后退物理按键关闭页面,代码如下:

引入jQuery:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>

具体实现代码:

$(function(){  
    pushHistory();  
    window.addEventListener("popstate", function(e) {  
        pushHistory();  
        var ua = navigator.userAgent.toLowerCase();    
        if(ua.match(/MicroMessenger/i)=="micromessenger") {    
             WeixinJSBridge.call('closeWindow');  
        } else if(ua.indexOf("alipay")!=-1){    
             AlipayJSBridge.call('closeWebview');    
        }else if(ua.indexOf("baidu")!=-1){    
            BLightApp.closeWindow();  
        }else if(ua.indexOf("bdnuomi")!=-1){  
            window.location.href="bainuo://home";  
        }  
        else{  
            window.close();  
        }  
}, false);  
    function pushHistory() {  
        var state = {  
            title: "title",  
            url: "#"  
        };  
        window.history.pushState(state, "title", "#");  
    }  
      
});

以上就是 百度糯米app中关闭网页或窗口的方法,99%的人都不知道,网上也找不到的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。