js实现通用的微信分享组件示例


Posted in Javascript onMarch 10, 2014

一、可定义的信息

1、分享时显示的LOGO;
2、分享LOGO的宽度;
3、分享LOGO的高度;
4、分享出去显示的标题(默认调用网页标题);
5、分享出去显示的描述(默认调用网页标题);
6、分享链接(默认为当前页面的URL)。
7、分享微信的APPID(一般为空)。

二、使用方法

1、引入微信分享组件js:

/*******************************
 * Author:Mr.Think
 * Description:微信分享通用代码
 * 使用方法:_WXShare('分享显示的LOGO','LOGO宽度','LOGO高度','分享标题','分享描述','分享链接','微信APPID(一般不用填)');
 *******************************/
function _WXShare(img,width,height,title,desc,url,appid){
    //初始化参数
    img=img||'http://a.zhixun.in/plug/img/ico-share.png';
    width=width||100;
    height=height||100;
    title=title||document.title;
    desc=desc||document.title;
    url=url||document.location.href;
    appid=appid||'';
    //微信内置方法
    function _ShareFriend() {
        WeixinJSBridge.invoke('sendAppMessage',{
              'appid': appid,
              'img_url': img,
              'img_width': width,
              'img_height': height,
              'link': url,
              'desc': desc,
              'title': title
              }, function(res){
                _report('send_msg', res.err_msg);
          })
    }
    function _ShareTL() {
        WeixinJSBridge.invoke('shareTimeline',{
              'img_url': img,
              'img_width': width,
              'img_height': height,
              'link': url,
              'desc': desc,
              'title': title
              }, function(res) {
              _report('timeline', res.err_msg);
              });
    }
    function _ShareWB() {
        WeixinJSBridge.invoke('shareWeibo',{
              'content': desc,
              'url': url,
              }, function(res) {
              _report('weibo', res.err_msg);
              });
    }
    // 当微信内置浏览器初始化后会触发WeixinJSBridgeReady事件。
    document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
            // 发送给好友
            WeixinJSBridge.on('menu:share:appmessage', function(argv){
                _ShareFriend();
          });
            // 分享到朋友圈
            WeixinJSBridge.on('menu:share:timeline', function(argv){
                _ShareTL();
                });
            // 分享到微博
            WeixinJSBridge.on('menu:share:weibo', function(argv){
                _ShareWB();
           });
    }, false);
}
Javascript 相关文章推荐
js报错 Object doesn't support this property or method的原因分析
Mar 31 Javascript
各情景下元素宽高的获取实现代码
Sep 13 Javascript
javascript自定义右键弹出菜单实现方法
May 25 Javascript
javascript中利用柯里化函数实现bind方法
Apr 29 Javascript
浅谈js中的in-for循环
Jun 28 Javascript
很酷的星级评分系统原生JS实现
Aug 25 Javascript
JS实现根据用户输入分钟进行倒计时功能
Nov 14 Javascript
轻松学习Javascript闭包
Mar 01 Javascript
Bootstrap模态框插件使用详解
May 11 Javascript
让你5分钟掌握9个JavaScript小技巧
Jun 09 Javascript
vue 强制组件重新渲染(重置)的两种方案
Oct 29 Javascript
Vue使用鼠标在Canvas上绘制矩形
Dec 24 Vue.js
jquery基础教程之数组使用详解
Mar 10 #Javascript
查询json的数据结构的8种方式简介
Mar 10 #Javascript
js 3秒后跳转页面的实现代码
Mar 10 #Javascript
php is_numberic函数造成的SQL注入漏洞
Mar 10 #Javascript
关于JavaScript对象的动态选择及遍历对象
Mar 10 #Javascript
使用js操作css实现js改变背景图片示例
Mar 10 #Javascript
红米手机抢购的js代码
Mar 10 #Javascript
You might like
PHP中MVC模式的模板引擎开发经验分享
2011/03/23 PHP
PHP register_shutdown_function函数的深入解析
2013/06/03 PHP
php写入mysql中文乱码的实例解决方法
2019/09/17 PHP
使用jquery选择器如何获取父级元素、同级元素、子元素
2014/05/14 Javascript
jQuery中position()方法用法实例
2015/01/16 Javascript
Javascript无参数和有参数类继承问题解决方法
2015/03/02 Javascript
基于RequireJS和JQuery的模块化编程日常问题解析
2016/04/14 Javascript
Angular工具方法学习
2016/12/26 Javascript
JavaScript函数基础详解
2017/02/03 Javascript
vue 实现的树形菜的实例代码
2018/03/19 Javascript
JS在if中的强制类型转换方式
2018/07/15 Javascript
javascript将非数值转换为数值
2018/09/13 Javascript
JS/HTML5游戏常用算法之碰撞检测 像素检测算法实例详解
2018/12/12 Javascript
详解js获取video任意时间的画面截图
2019/04/17 Javascript
如何写好一个vue组件,老夫的一年经验全在这了(推荐)
2019/05/18 Javascript
微信小程序用户登录和登录态维护的实现
2020/12/10 Javascript
推荐11个实用Python库
2015/01/23 Python
Python通过调用mysql存储过程实现更新数据功能示例
2018/04/03 Python
Python实现计算圆周率π的值到任意位的方法示例
2018/05/08 Python
python3连接MySQL数据库实例详解
2018/05/24 Python
Python实现快速傅里叶变换的方法(FFT)
2018/07/21 Python
Python根据文件名批量转移图片的方法
2018/10/21 Python
使用python实现抓取腾讯视频所有电影的爬虫
2019/04/15 Python
python实现比较类的两个instance(对象)是否相等的方法分析
2019/06/26 Python
使用OpenCV获取图片连通域数量,并用不同颜色标记函
2020/06/04 Python
html5使用window.postMessage进行跨域实现数据交互的一次实战
2021/02/24 HTML / CSS
事业单位请假制度
2014/01/13 职场文书
银行服务感言
2014/03/01 职场文书
市场营销战略计划书
2014/05/06 职场文书
数控机床专业自荐信
2014/05/19 职场文书
营销计划书范文
2015/01/17 职场文书
计划生育工作总结2015
2015/04/03 职场文书
装饰技术负责人岗位职责
2015/04/13 职场文书
2016年国培研修日志
2015/11/13 职场文书
Python Django 后台管理之后台模型属性详解
2021/04/25 Python
MySQL 逻辑备份与恢复测试的相关总结
2021/05/14 MySQL