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 相关文章推荐
JQuery AJAX提交中文乱码的解决方案
Jul 02 Javascript
javascript学习笔记(五)原型和原型链详解
Oct 08 Javascript
js闭包实现按秒计数
Apr 23 Javascript
Bootstrap每天必学之按钮(一)
Nov 24 Javascript
Bootstrap的fileinput插件实现多文件上传的方法
Sep 05 Javascript
javascript函数的四种调用模式
Jan 08 Javascript
javascript实现多张图片左右无缝滚动效果
Mar 22 Javascript
使用veloticy-ui生成文字动画效果
Feb 08 Javascript
axios向后台传递数组作为参数的方法
Aug 11 Javascript
javascript中UMD规范的代码推演
Aug 29 Javascript
webpack之引入图片的实现及问题
Oct 08 Javascript
在react-antd中弹出层form内容传递给父组件的操作
Oct 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
处理单名多值表单的详解
2013/06/08 PHP
php pki加密技术(openssl)详解
2013/07/01 PHP
简介PHP的Yii框架中缓存的一些高级用法
2016/03/29 PHP
thinkPHP中session()方法用法详解
2016/12/08 PHP
随机显示经典句子或诗歌的javascript脚本
2007/08/04 Javascript
用js闭包的方法实现多点标注冒泡示例
2014/05/29 Javascript
JavaScript中伪协议 javascript:使用探讨
2014/07/18 Javascript
JavaScript插件化开发教程 (三)
2015/01/27 Javascript
使用jquery+CSS3实现仿windows10开始菜单的下拉导航菜单特效
2015/09/24 Javascript
浅谈jquery点击label触发2次的问题
2016/06/12 Javascript
BootStrap tooltip提示框使用小结
2016/10/26 Javascript
jQuery复合事件结合toggle()方法的用法示例
2017/06/10 jQuery
js 倒计时(高效率服务器时间同步)
2017/09/12 Javascript
vue用addRoutes实现动态路由的示例
2017/09/15 Javascript
VeeValidate在vue项目里表单校验应用案例
2018/05/09 Javascript
vuex的module模块用法示例
2018/11/12 Javascript
原生JS检测CSS3动画是否结束的方法详解
2019/01/27 Javascript
记录一次完整的react hooks实践
2019/03/11 Javascript
Vue项目中使用flow做类型检测的方法
2020/03/18 Javascript
vue-router为激活的路由设置样式操作
2020/07/18 Javascript
python缩进区别分析
2014/02/15 Python
Python中下划线的使用方法
2015/03/27 Python
python中随机函数random用法实例
2015/04/30 Python
python里使用正则表达式的组嵌套实例详解
2017/10/24 Python
python使用turtle库绘制树
2018/06/25 Python
浅谈Python采集网页时正则表达式匹配换行符的问题
2018/12/20 Python
Python3模拟登录操作实例分析
2019/03/12 Python
Python 继承,重写,super()调用父类方法操作示例
2019/09/29 Python
pytorch方法测试详解——归一化(BatchNorm2d)
2020/01/15 Python
Python求两个字符串最长公共子序列代码实例
2020/03/05 Python
HTML5表格_动力节点Java学院整理
2017/07/11 HTML / CSS
鱼油专家:Omegavia
2016/10/10 全球购物
如何用Python来进行查询和替换一个文本字符串
2014/01/02 面试题
清洁员岗位职责
2015/02/15 职场文书
golang import自定义包方式
2021/04/29 Golang
在 Python 中利用 Pool 进行多线程
2022/04/24 Python