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 相关文章推荐
一页面多XMLHttpRequest对象
Jan 22 Javascript
编辑浪子版表单验证类
May 12 Javascript
javascript setTimeout和setInterval 的区别
Dec 08 Javascript
jquery 插件学习(一)
Aug 06 Javascript
jQuery中outerHeight()方法用法实例
Jan 19 Javascript
JavaScript实现可拖拽的拖动层Div实例
Aug 05 Javascript
JS 循环li添加点击事件 (闭包的应用)
Dec 10 Javascript
JS 验证密码 不能为空,必须含有数字、字母、特殊字符,长度在8-12位
Jun 21 Javascript
解决vue2.x中数据渲染以及vuex缓存的问题
Jul 13 Javascript
vue项目中的webpack-dev-sever配置方法
Dec 14 Javascript
Postman模拟发送带token的请求方法
Mar 31 Javascript
vuex 解决报错this.$store.commit is not a function的方法
Dec 17 Javascript
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在window iis的莫名问题的测试方法
2013/05/14 PHP
解析PHP对现有搜索引擎的调用
2013/06/25 PHP
php格式化电话号码的方法
2015/04/24 PHP
php中注册器模式类用法实例分析
2015/11/03 PHP
php实现微信公众号创建自定义菜单功能的实例代码
2019/06/11 PHP
HTML IMG标签 onload 内存溢出导致浏览器CPU占用过高
2021/03/09 Javascript
jquery 插件学习(六)
2012/08/06 Javascript
IE8的JavaScript点击事件(onclick)不兼容的解决方法
2013/11/22 Javascript
Node.js中使用事件发射器模式实现事件绑定详解
2014/08/15 Javascript
JavaScript实现的使用键盘控制人物走动实例
2014/08/27 Javascript
Javascript 构造函数详解
2014/10/22 Javascript
jquery淡入淡出效果简单实例
2016/01/14 Javascript
深入浅析search 搜索框的写法
2016/08/02 Javascript
javascript汉字拼音互转的简单实例
2016/10/09 Javascript
JQuery实现文字无缝滚动效果示例代码(Marquee插件)
2017/03/07 Javascript
微信小程序 跳转传参数与传对象详解及实例代码
2017/03/14 Javascript
微信小程序 input表单与redio及下拉列表的使用实例
2017/09/20 Javascript
nodejs遍历文件夹下并操作HTML/CSS/JS/PNG/JPG的方法
2018/11/01 NodeJs
Vue 技巧之控制父类的 slot
2020/02/24 Javascript
原生js实现html手机端城市列表索引选择城市
2020/06/24 Javascript
如何手写一个简易的 Vuex
2020/10/10 Javascript
Django后台获取前端post上传的文件方法
2018/05/28 Python
Pycharm更换python解释器的方法
2018/10/29 Python
Linux下远程连接Jupyter+pyspark部署教程
2019/06/21 Python
Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)
2019/08/12 Python
Django shell调试models输出的SQL语句方法
2019/08/29 Python
python使用OpenCV模块实现图像的融合示例代码
2020/04/10 Python
学会迭代器设计模式,帮你大幅提升python性能
2021/01/03 Python
HTML5 canvas基本绘图之绘制线条
2016/06/27 HTML / CSS
猎人靴英国官网:Hunter Boots
2017/02/02 全球购物
英国时尚和家居用品零售商:Matalan
2021/02/28 全球购物
小学生演讲稿
2014/01/12 职场文书
通知的格式范文
2015/04/27 职场文书
毕业论文致谢怎么写
2015/05/14 职场文书
React配置子路由的实现
2021/06/03 Javascript
Python深度学习之实现卷积神经网络
2021/06/05 Python