zoukankan      html  css  js  c++  java
  • 社区网站功能实现系列(二):社区内容分享到别的SNS

    社区网站功能实现系列(二):社区内容分享到别的SNS

    我们在逛社区的时候经常会看到社区里面的某一个相册或者视频、博客下有一个分享的块,如下图:

     

    当你点其中一个按钮,如QQ空间,这篇内容就会被分享到你的QQ空间里面(若你没有登录QQ空间,则会提示你登录)。分享成功之后,这个就会作为你在QQ空间里面的一个分享。下面我就来讲讲具体实现吧。

    其实很简单,每一个稍微有点名气的社区,都会有这么一个链接,它接收一个url和一个title,然后就会把这条对应的信息做成为它下面的一个分享,比如人人网,它的这个链接是:http://share.renren.com/share/buttonshare.do?link=x&title=y 很明显,这里的x是url,y是title。

    了解了这点,那解决这个问题就太容易了。

    下面就给出这些个SNS的share链接的js实现。

    function ShareTo(obj)

    {

        //这两个变量是在页面初始化的时候赋值的

            var shareuri = encodeURIComponent(document.getElementById("<%=share_url.ClientID %>").value);

            var sharetitle = document.getElementById("<%=share_title.ClientID %>").value;

            var target_url;

            switch(obj)

            {

                case "qqzone":

                    target_url = "http://rc.qzone.qq.com/myhome/share/#action=post&url="+ shareuri;

                    break;

                case "baidu":

                    target_url="http://apps.hi.baidu.com/share/?url="+shareuri;

                    break;

                case "renren":

    target_url="http://share.renren.com/share/buttonshare.do?link="+shareuri+"&title="+sharetitle;

              break;

           case "kaixin": 

             target_url="http://www.kaixin001.com/repaste/share.php?rtitle="+sharetitle+"&rcontent="+sharetitle+"&rurl="+shareuri;

                    break;

                case "douban":

                    target_url="http://www.douban.com/recommend/?url="+shareuri+"&title="+sharetitle;

                    break;

                case "facebook":

                    target_url="http://www.facebook.com/sharer.php?u="+shareuri+"&t="+sharetitle;

                    break;

                case "twitter":

                    target_url="http://twitter.com/home?status="+sharetitle+" - "+shareuri;

                    break;

                case "buzz":

                    target_url="http://www.google.com/reader/link?url="+shareuri+"&title="+sharetitle;

                    break;

                case "digg":

                    target_url="http://digg.com/submit?phase=2&url="+shareuri+"&title="+sharetitle;

                    break;

            }

            window.open(target_url);

    }

     

    实现太简单,贻笑大方了。

  • 相关阅读:
    移植spdylay到libcurl
    用到的C++标准库
    libcurl底层调用逻辑
    socket编程
    linux的一些机制Signal, Fork,
    openssl 编程
    对称加密,非对称加密
    ajax提交整个form表单
    一道基础的for语句js编译过程
    怎样将浏览器一句话变为文本编辑器
  • 原文地址:https://www.cnblogs.com/myself/p/1693657.html
Copyright © 2011-2022 走看看