简单制作网页分享按钮

话说这是一个人际互联的时代,SNS 类的社交网络大行其道。页面作为一种资源怎么不会参与到社交网络的分享中呢?于是我们看到页面都会提供一个分享功能,如我正在写的 CSDN 博文,出来就会有:

虽然现在有不少服务是专门做些分享按钮的,功能比较强大,包括统计的功能也有,但 Google 一番之后,发现其原理无非就是几张 icon 图片+连接,简单得很——于是就想自己来干,过把手瘾。

最后我的实现起来,比上述的都要简单,也不想搞那么复杂,没有写任何 JS。另外,为适应我自己的类库,我用 JSP 的 Tag Files 封装了一下,定义了相关接口。

<%@tag pageEncoding="UTF-8" description="文章功能模块"%>
<%@ attribute name="title" required="false" description="文章标题"%> 
<%
	// JSP 获取当前页面的 URL
	int srverPort = request.getServerPort();
	String currentPage_url = request.getScheme() + "://" + request.getServerName();
	if(serverPort != 80){
		currentPage_url += ":" + serverPort;
	}
	currentPage_url += request.getRequestURI() + "?" + request.getQueryString();
%>
HTML 部分:
<div class="share">
	<a title="转发至QQ空间" charset="400-03-8" id="s_qq"
		href="http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=<%=currentPage_url%>"
		target="_blank"><img
		src="http://static.youku.com/v1.0.0691/v/img/ico_Qzone.gif" /></a>
	<a title="转发至人人网" charset="400-03-7" id="s_renren"
		href=http://share.renren.com/share/buttonshare.do?link=<%=currentPage_url%>&title=<%=title%>
		target="_blank"><img
		src="http://static.youku.com/v1.0.0691/v/img/ico_renren.gif" /></a>
	<a title="转发至新浪微博" charset="400-03-10" id="s_sina"
		href="http://v.t.sina.com.cn/share/share.php?appkey=2684493555&url=<%=currentPage_url%>&title=<%=title%>&Uid=&source=&sourceUrl="
		target="_blank"><img
		src="http://static.youku.com/v1.0.0691/v/img/ico_sina.gif" /></a>
	<a title="分享到腾讯朋友" charset="400-03-19" id="s_pengyou"
		href=http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?to=pengyou&url=<%=currentPage_url%>&title=%<%=title%>
		target="_blank"><img
		src="http://static.youku.com/v1.0.0691/v/img/ico_pengyou.png" /></a>
	<a title="推荐到豆瓣" charset="400-03-17" id="s_douban"
		href=http://www.douban.com/recommend/?url=<%=currentPage_url%>&title=<%=title%>
		target="_blank"><img
		src="http://static.youku.com/v1.0.0691/v/img/ico_dou_16x16.png" /></a>
</div>	

一般的分享链接只需要两个参数就行,一是页面的标题,另一个就是页面的链接,至于腾讯微博和新浪微博都需要一个 appkey,这个另外再说,如果没有,直接用我提供的这个就行,因为 appkey 需要去申请,过程略微有点麻烦。

我认为,优化的空间无非就是:

一、雪碧图;

二、整理 CSS 为 LESS(是的,当前我已是 LESS 控了)

三、若在手机中,可以调用已安装的客户端吗?如新浪微博,通过 URI Scheme 传递 App ID 和参数。

四、点缀一下,增加 hover 效果

五、需要增加其他 SNS 供应商吗?貌似这些就够了耶~要那么也挺烦的~

六、考虑用 JS 获取 URL 和 title?我现在的是透过 JSP 获取的。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sp42a

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值