项目做得是微信会页面,页面内的分享客户说不好看,要求标题,描述,链接,图片可配置。同事那里拔过来的代码,修修改改也差不多了。代码如下:
//判断微信 function isWeixin(){
var ua = navigator.userAgent.toLowerCase(); if(ua.match(/MicroMessenger/i)=="micromessenger") { return true; } else { return false; } } if(isWeixin()){ var shareData = { title: '分享标题', desc: '分享描述信息', link: 'http://www.bauci.com’, imgUrl: 'res/web/images/logo.jpg ', }; var appid = 'wxXXXXXXXX"; function shareFriend() { WeixinJSBridge.invoke('sendAppMessage',{ "appid": appid, "img_url": shareData.imgUrl, "img_width": "640", "img_height": "640", "link": shareData.link, "desc": shareData.desc, "title": shareData.title }, function(res) { }); } function shareTimeline() { WeixinJSBridge.invoke('shareTimeline',{ "img_url": shareData.imgUrl, "img_width": "640", "img_height": "640", "link": shareData.link, "desc": shareData.desc, "title": shareData.title }, function(res) { }); } function shareWeibo() { WeixinJSBridge.invoke('shareWeibo',{ "content": shareData.desc, "url": shareData.link }, function(res) { }); } $(function(){ // 当微信内置浏览器完成内部初始化后会触发WeixinJSBridgeReady事件。 document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() { // 发送给好友 WeixinJSBridge.on('menu:share:appmessage', function(argv){ shareFriend(); }); // 分享到朋友圈 WeixinJSBridge.on('menu:share:timeline', function(argv){ shareTimeline(); }); // 分享到微博 WeixinJSBridge.on('menu:share:weibo', function(argv){ shareWeibo(); }); }, false); }); }
注:1、分享环境必须在appid域名下,要不不起作用。 2、图片格式只能为jpg,png格式图片ios系统中在微信客户端分享到qq客户端时自动把透明背景变黑,我的ios系统为ios9.13
3、微信分享微信可用,微信分享qq在ios上没问题在安卓上面不起作用。