微信浏览器私有对象 WeixinJSBridge的常用方法

1. 关闭微信浏览器回到对话窗口

function onBackCloseWindow() { //当点击返回键时,不返回到上一页,而是直接关闭微信浏览器
    pushHistory()
    window.addEventListener("popstate", function (e) {
        //关闭当前浏览器
        WeixinJSBridge.call("closeWindow");
        //如果是使用了iframe的页面
        //parent.WeixinJSBridge.call('closeWindow');
    }, false);

    function pushHistory() {
        var state = {
            title: "title",
            url: "#"
        };
        window.history.pushState(state, "title", "#");
    }
}

2. 屏蔽微信浏览器右上角三个点的分享功能

function onBridgeReady() { //隐藏右上角按钮
    WeixinJSBridge.call('hideOptionMenu');
}
if (typeof WeixinJSBridge == "undefined") { //屏蔽分享按钮
    if (document.addEventListener) {
        document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
    } else if (document.attachEvent) {
        document.attachEvent('WeixinJSBridgeReady', onBridgeReady);
        document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
    }
} else {
    onBridgeReady();
}

WeixinJSBridge的隐藏函数

WeixinJSBridge.call(‘hideToolbar’); //隐藏右下面工具栏
WeixinJSBridge.call(‘showToolbar’); //显示右下面工具栏
WeixinJSBridge.call(‘hideOptionMenu’); //隐藏右上角三个点按钮。
WeixinJSBridge.call(‘showOptionMenu’); //显示右上角三个点按钮。

3. 分享

1.分享好友

function sendMessage(){
    WeixinJSBridge.on('menu:share:appmessage', function(argv){
        WeixinJSBridge.invoke('sendAppMessage',{
            "appid":"", //appid 设置空就好了。
            "img_url": imgUrl, //分享时所带的图片路径
            "img_width": "120", //图片宽度
            "img_height": "120", //图片高度
            "link":url, //分享附带链接地址
            "desc":"我是一个介绍", //分享内容介绍
            "title":"标题,再简单不过了。"
        }, function(res){
            /*** 回调函数,最好设置为空 ***/
        }); 
    });
}

2.分享到朋友圈

function sendMessage(){
    WeixinJSBridge.on('menu:share:timeline', function(argv){
        WeixinJSBridge.invoke('shareTimeline',{
            "appid":"", //appid 设置空就好了。
            "img_url": imgUrl, //分享时所带的图片路径
            "img_width": "120", //图片宽度
            "img_height": "120", //图片高度
            "link":url, //分享附带链接地址
            "desc":"我是一个介绍", //分享内容介绍
            "title":"标题,再简单不过了。"
        }, function(res){
            /*** 回调函数,最好设置为空 ***/});

        }); 
    });
}

3.分享到微博

function sendMessage(){
    WeixinJSBridge.on('menu:share:weibo', function(argv){

        WeixinJSBridge.invoke('shareWeibo',{
            "content":dataForWeixin.title+' '+dataForWeixin.url,
            "url":dataForWeixin.url
        }, function(res){
            /*** 回调函数,最好设置为空 ***/

        });
    });
}

三个分享功能主要是监听的接口不同,

分享给好友(menu:share:appmessage);invoke(‘sendAppMessage’);
分享到朋友圈(menu:share:timeline);invoke(‘shareTimeline’);
分享到微博(menu:share:weibo);invoke(‘shareWeibo’);

  

 

  

posted @ 2022-03-08 18:23  Peter_Yang0942  阅读(2925)  评论(0编辑  收藏  举报