第三方分享工具bShare的技巧

最近项目让我做分享的部分,我们的项目呢,使用HTTPS协议的,我就对比了几个第三方分享框架,最后使用了bShare。在使用的过程中,遇到了一些问题,就记录下来,供大家和我自己查看。

一般的网站或者应用的话,可以使用bShare默认的分享方式,如果决定他们不太符合自己的要求,可以redirectAPI来自定义分享的方式。

具体步骤如下:

1. 定义分享dom 以及样式

<ul class="bshare_ul">
<li>分享到:</li>
<li>
<a title="分享到QQ空间"  οnclick="shareTo('qzone')" href="javascript:void(0);" >
<img src="http://static.bshare.cn/frame/images/logos/s4/qzone.gif "/>
</a>
</li>
<li>
<a title="分享到人人网"  οnclick="shareTo('renren')" href="javascript:void(0);" >
<img src="http://static.bshare.cn/frame/images/logos/s4/renren.gif "/>
</a>
</li>
<li>
<a title="分享到豆瓣"  οnclick="shareTo('douban')" href="javascript:void(0);" >
<img src="http://static.bshare.cn/frame/images/logos/s4/douban.gif "/>
</a>
</li>
<li>
<a title="分享到新浪微博"  οnclick="shareTo('sinaminiblog')" href="javascript:void(0);" >
<img src="http://static.bshare.cn/frame/images/logos/s4/sinaminiblog.gif "/>
</a>
</li>
<li>
<a title="分享到微信"  οnclick="shareTo('weixin')" href="javascript:void(0);" >
<img src="http://static.bshare.cn/frame/images/logos/s4/weixin.gif "/>
</a>
</li>
</ul>

样式就自己CSS写啦~~

2. 定义调用方法

function shareTo(site){
  var e = encodeURIComponent, s = screen, d = document, wd = 640, hg = 480, u = d.location;
  var uuid = '';
  var img ="http://ww4.sinaimg.cn/mw690/005QP7Jmgw1em6xv6694hg30dw07unei.gif";


  var ctxt = d.getElementById('contentText').getElementsByTagName('p').length>0?d.getElementById('contentText').getElementsByTagName('p')[0].innerHTML.replace(/<[^>].*?>/g,'').substr(0,120):'';
  

var url = "http://api.bshare.cn/share/"+site+"?url="+e("http://www.bshare.cn")+"&title="+e(d.title)+"&publisherUuid="+uuid+"&summary="+ctxt+"&pic="+img;
  window.open(url, 'bshare', ['toolbar=0,status=0,resizable=1,width='+ wd +',height='+ hg +',left='+ (s.width - wd) / 2+ ',top='+ (s.height - hg) / 2]);
}


使用中遇到的问题:

1. bshare分享的url中的title 和summary都可以自定义的。默认的title是我们页面中<head></head>标签中定义的<title></title>中的内容,summary是<meta name="description" content="content">content中的内容。如果没有定义description的话,分享的时候,title位置就会出现“This is the title - ”的形式。比如分享到微博的时候,在那个文本框里就会显示“This is the title -” ,用户体验不好。

这是因为bShare默认的在title和summary中有一个“-”,有两个方法可以改善用户体验。

1)注册bShare成为站长,然后在站长的站点管理中改变模板。

2)自定义summary,不让它的内容为空。


2. 分享到微信的时候,那个二维码特别小,只有129×129。在一个大窗口中只有左上角一个很小的二维码,看起来是不是很别扭?很难看呢?

所以我们可以只获取二维码,然后自定义显示样式。

获取二维码的url是:

url = "http://b.bshare.cn/barCode?site=weixin&type=0&url="+e(_getShareUrl())+&publisherUuid="+uuid;

这个url就是二维码图片的url地址了,我们只需要使用<img>标签,让它的src属性指向这个url就可以啦,想要怎么显示就怎么显示,是不是很方便?
*注意:获取微信二维码的url不需要很多参数,这个接口是不需要过多的参数的,只需要分享的地址,还有站长的id就可以了。


评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值