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 相关文章推荐
Ext.FormPanel 提交和 Ext.Ajax.request 异步提交函数的区别
Nov 12 Javascript
jQuery之$(document).ready()使用介绍
Apr 05 Javascript
结合JQ1.9通过js正则判断各种浏览器版本的方法
Dec 30 Javascript
JS实现可缩放、拖动、关闭和最小化的浮动窗口完整实例
Mar 04 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
Mar 13 Javascript
JavaScript中的DSL元编程介绍
Mar 15 Javascript
js使用onmousemove和onmouseout获取鼠标坐标的方法
Mar 31 Javascript
自学实现angularjs依赖注入
Dec 20 Javascript
详解JS中的快速排序与冒泡
Jan 10 Javascript
集合Bootstrap自定义confirm提示效果
Sep 19 Javascript
一文快速详解前端框架 Vue 最强大的功能
May 21 Javascript
探索node之事件循环的实现
Oct 30 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 截取字符串函数整理(支持gb2312和utf-8)
2010/02/16 PHP
解析用PHP实现var_export的详细介绍
2013/06/20 PHP
json 实例详细说明教程
2009/10/31 Javascript
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
2013/03/25 Javascript
有关于JS构造函数的重载和工厂方法
2013/04/07 Javascript
jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
2016/01/18 Javascript
javascript自动切换焦点控制效果完整实例
2016/02/02 Javascript
最细致的vue.js基础语法 值得收藏!
2016/11/03 Javascript
jQuery实现一个简单的轮播图
2017/02/19 Javascript
jQuery序列化后的表单值转换成Json
2017/06/16 jQuery
修改 bootstrap table 默认detailRow样式的实例代码
2017/07/21 Javascript
JS实现去除数组中重复json的方法示例
2017/12/21 Javascript
select标签设置默认选中的选项方法
2018/03/02 Javascript
element-ui表格列金额显示两位小数的方法
2018/08/24 Javascript
详解vuex持久化插件解决浏览器刷新数据消失问题
2019/04/15 Javascript
JavaScript中的 new 命令
2019/05/22 Javascript
js prototype深入理解及应用实例分析
2019/11/25 Javascript
决策树的python实现方法
2014/11/18 Python
python如何使用正则表达式的前向、后向搜索及前向搜索否定模式详解
2017/11/08 Python
Python使用正则表达式获取网页中所需要的信息
2018/01/29 Python
python实现AES加密与解密
2019/03/28 Python
3行Python代码实现图像照片抠图和换底色的方法
2019/10/10 Python
python中函数返回多个结果的实例方法
2020/12/16 Python
使用HTML5里的classList操作CSS类
2016/06/28 HTML / CSS
旧时光糖果:Old Time Candy
2018/02/05 全球购物
Baracuta官方网站:Harrington夹克,G9,G4,G10等
2018/03/06 全球购物
德国家用电器购物网站:Premiumshop24
2019/08/22 全球购物
英国门销售网站:Green Tree Doors
2020/01/07 全球购物
求职信名称怎么写
2014/05/26 职场文书
党员个人对照检查材料思想汇报
2014/09/16 职场文书
党的群众路线剖析材料
2014/10/09 职场文书
博士导师推荐信
2015/03/25 职场文书
第一书记观后感
2015/06/08 职场文书
修改MySQL的数据库引擎为INNODB的方法
2021/05/26 MySQL
Mysql中的触发器定义及语法介绍
2022/06/25 MySQL
mysql通过group by分组取最大时间对应数据的两种有效方法
2022/09/23 MySQL