惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recorded Future
Recorded Future
Microsoft Security Blog
Microsoft Security Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
The Register - Security
The Register - Security
The GitHub Blog
The GitHub Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
人人都是产品经理
人人都是产品经理
量子位
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
有赞技术团队
有赞技术团队
Stack Overflow Blog
Stack Overflow Blog
H
Help Net Security
Apple Machine Learning Research
Apple Machine Learning Research
The Cloudflare Blog
B
Blog RSS Feed
小众软件
小众软件
博客园 - 叶小钗
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 聂微东
博客园_首页
B
Blog
雷峰网
雷峰网
S
SegmentFault 最新的问题
N
Netflix TechBlog - Medium
D
Docker
博客园 - 司徒正美
博客园 - 【当耐特】
大猫的无限游戏
大猫的无限游戏
博客园 - Franky
MongoDB | Blog
MongoDB | Blog
U
Unit 42
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
腾讯CDC
F
Fortinet All Blogs
aimingoo的专栏
aimingoo的专栏
Martin Fowler
Martin Fowler
Jina AI
Jina AI
WordPress大学
WordPress大学
D
DataBreaches.Net
V
V2EX
V
Visual Studio Blog
Know Your Adversary
Know Your Adversary
P
Privacy & Cybersecurity Law Blog
F
Full Disclosure
G
Google Developers Blog
Engineering at Meta
Engineering at Meta
The Hacker News
The Hacker News
Security Archives - TechRepublic
Security Archives - TechRepublic
IT之家
IT之家
P
Privacy International News Feed

博客园 - o0myself0o

利用线程池实现多客户端和单服务器端Socket通讯(二):异步编程模型实现 生产者消费者模式,代码中碰到的疑问(已解决) 利用线程池实现多客户端和单服务器端Socket通讯(一):同步方式 Entity Framework 4.0 ObjectContext下的各种方法实践 题目:若干个不重复数,打乱顺序输出 wtf js(四) - o0myself0o - 博客园 wtf js(三) number的类型不是number wtf js(二) 算法:给定两个已从小到大排好序的整型数组arrA和arrB,将两个数组合并成arrC,使得arrC也要按从小到大的顺序排好序 应用中的单例模式 面试题:给你三个bool类型变量a, b, c,判断至少有两个为true javascript面向对象编程(一) - o0myself0o - 博客园 wtf js(一) - o0myself0o - 博客园 社区网站功能实现系列(三):社区页面无刷新回发的一种实现方式 社区网站功能实现系列(一):多国语言的实现 反射获取Class中Property的值 A*寻路初探 闲谈ASP.NET 2.0缓存技术 使用 jQuery 简化 Ajax 开发
社区网站功能实现系列(二):社区内容分享到别的SNS
o0myself0o · 2010-03-24 · via 博客园 - o0myself0o

社区网站功能实现系列(二):社区内容分享到别的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);

}

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