JavaScript-如何做一个分享的功能
看到Jiathis和bShare的分享功能现在很火,想做一个可以嵌入我们网站的分享功能,让别人也能把文章,图片什么的分享到我们的网站上来,大家给点思路
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
看到Jiathis和bShare的分享功能现在很火,想做一个可以嵌入我们网站的分享功能,让别人也能把文章,图片什么的分享到我们的网站上来,大家给点思路
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
这个其实很简单,你的share.js里只需要做三个东西:
1、获取当前页面的Title
2、获取当前页面的URL
3、网站所需要的其它参数。
将这些信息以Get方式提交到你的网站的指定页面中,最后由于后端程序生成短网站和相关信息,最后记录插入到数据中。
通过js获到当前网站的标题,url,然后把这两个参数传递到分享到的网站接口中,就拿分享到腾讯微博来说,分享一个网站的接口是这样的:
http://share.v.t.qq.com/index.php?c=share&a=index&url={网址}&title={网页标题}&appkey=801cf76d3cfc44ada52ec13114e84a96
网址和网页标题js是可以获取,其它的参数是固定的,所以JS拿到这两个参数跳转一下页页即可。
市面上的大部分分享都是分享显示文章标题、subject数据,然后附加上原文链接,点击链接进入原文链接页面,除非是你自己不同系统之间进行分享,这样可以原文所以内容进行分享显示。
var sina_links = 'http://service.t.sina.com.cn/share/share.php?url='+encodeURI(share.url)+'&title='+encodeURI(share.title)+'&pic='+share.pic;
$('sina').href = sina_links;
var kaixin001_links = 'http://www.kaixin001.com/repaste/share.php?rurl='+encodeURI(share.url)+'&rtitle='+encodeURI(share.title);
$('kaixin001').href = kaixin001_links;
var renren_links = 'http://share.renren.com/share/buttonshare.do?link='+encodeURI(share.url)+'&title='+encodeURI(share.title);
$('renren').href = renren_links;
var douban_links = 'http://www.douban.com/recommend/?url='+encodeURI(share.url)+'&title='+encodeURI(share.title);
$('douban').href = douban_links;
var tqq_links = 'http://v.t.qq.com/share/share.php?url='+encodeURI(share.url)+'&title='+encodeURI(share.title);
$('tqq').href = tqq_links;
var qzone_links = 'http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url='+encodeURI(share.url);
$('qzone').href = qzone_links;
var msn_links='http://profile.live.com/badge?url=' + encodeURI(share.url) + '&screenshot=' + encodeURI(share.pic) + '&title=' +encodeURI(share.title);
$('msn').href = msn_links;
看到上面“分享到”的链接代码,就可以仿照上面链接自己写接收接口,你接收文章的url、文章标题title、再来个文章subject(限定字数)。接收过来后把数据存到你文章数据库表里,做个标记来标记是分享过来的,前台根据标记特殊处理就ok了。