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 相关文章推荐
ExtJS 2.0 实用简明教程之布局概述
Apr 29 Javascript
javascript 防止刷新,后退,关闭
Aug 07 Javascript
javascript使用正则控制input输入框允许输入的值方法大全
Jun 19 Javascript
详解javascript中原始数据类型Null和Undefined
Dec 17 Javascript
JavaScript实战(原生range和自定义特效)简单实例
Aug 21 Javascript
javascript 动态脚本添加的简单方法
Oct 11 Javascript
easyui messager alert 三秒后自动关闭提示的实例
Nov 07 Javascript
jQuery制作图片旋转效果
Feb 02 Javascript
Vue Router history模式的配置方法及其原理
May 30 Javascript
electron+vue实现div contenteditable截图功能
Jan 07 Javascript
js实现自动播放匀速轮播图
Feb 06 Javascript
es6中let和const的使用方法详解
Feb 24 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水印技术
2007/02/14 PHP
php下防止单引号,双引号在接受页面转义的设置方法
2008/09/25 PHP
Apache+php+mysql在windows下的安装与配置图解(最新版)
2008/11/30 PHP
php学习笔记 面向对象的构造与析构方法
2011/06/13 PHP
PHP封装分页函数实现文本分页和数字分页
2014/10/23 PHP
php 数据结构之链表队列
2017/10/17 PHP
postman的安装与使用方法(模拟Get和Post请求)
2018/08/06 PHP
PHP扩展Swoole实现实时异步任务队列示例
2019/04/13 PHP
修改Laravel自带的认证系统的User类的命名空间的步骤
2019/10/15 PHP
一个JS翻页效果
2007/07/23 Javascript
JS input 数字验证代码
2009/07/30 Javascript
jQuery参数列表集合
2011/04/06 Javascript
JS图片根据鼠标滚动延时加载的实例代码
2013/07/13 Javascript
JavaScript实现鼠标点击后层展开效果的方法
2015/05/13 Javascript
javascript无刷新评论实现方法
2015/05/13 Javascript
jQuery Dialog 打开时自动聚焦的解决方法(两种方法)
2016/11/24 Javascript
多个上传文件用js验证文件的格式和大小的方法(推荐)
2017/03/09 Javascript
jQuery EasyUI 折叠面板accordion的使用实例(分享)
2017/12/25 jQuery
利用ECharts.js画K线图的方法示例
2018/01/10 Javascript
利用原生的JavaScript实现简单拼图游戏
2018/11/18 Javascript
JS实现音乐钢琴特效
2020/01/06 Javascript
解决vue项目中某一页面不想引用公共组件app.vue的问题
2020/08/14 Javascript
ant design vue 表格table 默认勾选几项的操作
2020/10/31 Javascript
python 通过可变参数计算n个数的乘积方法
2019/06/13 Python
python深copy和浅copy区别对比解析
2019/12/26 Python
浅谈Python3多线程之间的执行顺序问题
2020/05/02 Python
简单介绍CSS3中Media Query的使用
2015/07/07 HTML / CSS
详解CSS3选择器:nth-child和:nth-of-type之间的差异
2017/09/18 HTML / CSS
广州品高软件.net笔面试题目
2012/04/18 面试题
会计助理岗位职责
2014/02/17 职场文书
开学典礼主持词
2014/03/19 职场文书
小学学校评估方案
2014/06/08 职场文书
2015年后勤工作总结范文
2015/04/08 职场文书
2015年司法局工作总结
2015/05/22 职场文书
2015年小学教科研工作总结
2015/07/20 职场文书
Spring Boot 排除某个类加载注入IOC的操作
2021/08/02 Java/Android