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 相关文章推荐
input 高级限制级用法
Mar 26 Javascript
juqery 学习之五 文档处理 插入
Feb 11 Javascript
从零开始学习jQuery (十) jQueryUI常用功能实战
Feb 23 Javascript
jquery常用技巧及常用方法列表集合
Apr 06 Javascript
javascript实现json页面分页实例代码
Feb 20 Javascript
javascript跑马灯抽奖实例讲解
Apr 17 Javascript
Node.js读写文件之批量替换图片的实现方法
Sep 07 Javascript
Angular在一个页面中使用两个ng-app的方法
Feb 20 Javascript
VueJs单页应用实现微信网页授权及微信分享功能示例
Jul 26 Javascript
vue滚动轴插件better-scroll使用详解
Oct 17 Javascript
Bootstrap fileinput 上传新文件移除时触发服务器同步删除的配置
Oct 08 Javascript
浅谈vue中组件绑定事件时是否加.native
Nov 09 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
《魔兽争霸3:重制版》更新 多项视觉效果调整
2020/05/04 魔兽争霸
PHP实现在线阅读PDF文件的方法
2015/06/17 PHP
PHP实现链式操作的三种方法详解
2017/11/16 PHP
JavaScript 基础知识 被自己遗忘的
2009/10/15 Javascript
JavaScript中setInterval的用法总结
2013/11/20 Javascript
javascript对下拉列表框(select)的操作实例讲解
2013/11/29 Javascript
javascript实现倒计时N秒后网页自动跳转代码
2014/12/11 Javascript
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
2014/12/20 Javascript
jquery实现勾选复选框触发事件给input赋值
2015/02/01 Javascript
JavaScript数据推送Comet技术详解
2016/04/07 Javascript
基于jquery实现三级下拉菜单
2016/05/10 Javascript
微信小程序 request接口的封装实例代码
2017/04/26 Javascript
JS实现数组去重方法总结(六种方法)
2017/07/14 Javascript
Angular2 http jsonp的实例详解
2017/08/31 Javascript
AngularJS实现图片上传和预览功能的方法分析
2017/11/08 Javascript
JavaScript强制类型转换和隐式类型转换操作示例
2019/05/01 Javascript
小程序云开发教程如何使用云函数实现点赞功能
2019/05/18 Javascript
JavaScript ECMA-262-3 深入解析(二):变量对象实例详解
2020/04/25 Javascript
vue-router之解决addRoutes使用遇到的坑
2020/07/19 Javascript
ElementUI 修改默认样式的几种办法(小结)
2020/07/29 Javascript
[35:26]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第三局
2016/02/26 DOTA
Python脚本暴力破解栅栏密码
2015/10/19 Python
Python中str.join()简单用法示例
2018/03/20 Python
uwsgi+nginx部署Django项目操作示例
2018/12/04 Python
Python中zip()函数的简单用法举例
2019/09/02 Python
PyCharm使用Docker镜像搭建Python开发环境
2019/12/26 Python
Python如何基于smtplib发不同格式的邮件
2019/12/30 Python
python绘制分布折线图的示例
2020/09/24 Python
生物制药自我鉴定
2014/01/25 职场文书
学习与创新自我评价
2015/03/09 职场文书
唐山大地震的观后感
2015/06/05 职场文书
JS实现简单控制视频播放倍速的实例代码
2021/04/18 Javascript
Golang 获取文件md5校验的方法以及效率对比
2021/05/08 Golang
排查MySQL生产环境索引没有效果
2022/04/11 MySQL
Golang MatrixOne使用介绍和汇编语法
2022/04/19 Golang
vue二维数组循环嵌套方式 循环数组、循环嵌套数组
2022/04/24 Vue.js