一、实现QQ登录功能

<!DOCTYPE html>
<html lang="zh-cn">
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <title>QQ登录功能 - JSSDK</title>
   </head>
   <body>
     <a href="javascript:void(0)" id="qq_login_btn" _origText="get_user_info 加载昵称中..." title="nickname">QQ登录</span>
     <a href="javascript:void(0)" id="login_btn" _origText="get_user_info 加载昵称中..." title="nickname">QQ登录申请回调地址</span>
     <a href="javascript:void(0)" id="qq_logout_btn" >退出</span>
   </body>
</html>
<script type="text/javascript" src="http://qzonestyle.gtimg.cn/qzone/openapi/qc_loader.js" charset="utf-8" data-appid="100229030" data-redirecturi=""></script><!--appid和redirecturi可以放在加载js中-->
<script type="text/javascript">
  //检测是否已经登录
  function getInfo() {
    if(QC.Login.check()){
      QC.api("get_user_info")
        .success(function(s){//成功回调
          alert("获取用户信息成功!当前用户昵称为:"+s.data.nickname);
        })
        .error(function(f){//失败回调
          alert("获取用户信息失败!");
        })
        .complete(function(c){//完成请求回调
          alert("获取用户信息完成!");
        });
    }else{
      alert("请登录后体验");
    }
  }

getInfo();

//方法一

//加入QQ登录按钮,这种方法打开的是一个小窗口的网页页面
  /* QC.Login({
    btnId:"qq_login_btn"
  });*/

//方法二
document.getElementById('qq_login_btn').onclick = function(){
    QC.Login.showPopup({
        appId:"100229030",
        redirectURI:""//回调地址必须以http或https开头。回调地址为空时登录成功后直接返回当前登录页面
     });
}

document.getElementById('login_btn').onclick = function(){
    QC.Login.showPopup({
      appId:"101119675",//申请appId 可以返回会跳地址,其中要填写回调地址和名称
      redirectURI:"http://passport.jikexueyuan.com/connect/success?t=qq&state=e1228ead2277a831fdb270bf1e07c726&scope=get_user_info"//回调地址必须以http或https开头。
    });
}

//检测当前登录状态返回值说明:true:说明登录成功。false:说明登录失败。
if(QC.Login.check()){
   document.getElementById('qq_logout_btn').onclick = function(){
       QC.Login.signOut()
       alert("退出")
   }
}

</script>

二、实现分享到QQ好友功能

<!DOCTYPE html>
<html lang="zh-cn">
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <title>分享到QQ好友功能 - JSSDK</title>
   </head>
   <body>
    <a title="分享到QQ后面链接使用的是encodeURIComponent" hidefocus="true" target="_blank" href="http://connect.qq.com/widget/shareqq/index.html?url=http%3A%2F%2Fwiki.connect.qq.com%2Fjs_sdk%25e4%25bd%25bf%25e7%2594%25a8%25e8%25af%25b4%25e6%2598%258e%3Fsource%3Dshareqq&amp;desc=%E8%AF%B7%E5%8F%82%E8%80%83QQ%E4%BA%92%E8%81%94%E6%96%87%E6%A1%A3%E5%BA%93%E4%B8%AD%E7%9A%84%E3%80%8AJS_SDK%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E%E3%80%8B%EF%BC%8C%E5%B8%8C%E6%9C%9B%E5%AF%B9%E4%BD%A0%E6%9C%89%E5%B8%AE%E5%8A%A9%E3%80%82&amp;title=JS_SDK%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E-QQ%E4%BA%92%E8%81%94%E6%96%87%E6%A1%A3%E5%BA%93&amp;summary=&amp;pics=&amp;flash=&amp;site=QQ%E4%BA%92%E8%81%94%E6%96%87%E6%A1%A3%E5%BA%93&amp;callback=http%3A%2F%2Fcgi.connect.qq.com%2Freport%2Freport_vm%3Ftag%3D0%26log%3Djs~sdk%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E_11133_0%26t%3D1467341529006" class="qcShareQQDiv">分享到QQ</a><!--分享到QQ可以把链接直接放到a标签的href中,里面的参数要用encodeURIComponent编码-->

<a class="bt_icon" href="###" id="qcShareQQDiv" title="发送到QQ好友和群">发送到QQ好友和群</a>
   </body>
 </html>
<script>
document.getElementById('qcShareQQDiv').onclick = function(e){
    var  p = {
            url: 'http://connect.qq.com/widget/shareqq/test_iframe_shareqq.html',/*获取URL,可加上来自分享到QQ标识,方便统计*/
            desc: 'QQ分享', /*分享理由(风格应模拟用户对话),支持多分享语随机展现(使用|分隔)*/
            title : 'QQ分享',/*分享标题(可选)*/
            summary : 'QQ分享',/*分享描述(可选)*/
            pics : '',/*分享图片(可选)*/
            flash : '', /*视频地址(可选)*/
            //commonClient : true, /*客户端嵌入标志*/
            site: 'QQ分享'/*分享来源 (可选) ,如:QQ分享*/
        };

var s = [];
        for (var i in p) {
            s.push(i + '=' + encodeURIComponent(p[i] || ''));
        }
        //使用http://connect.qq.com/widget/shareqq/iframe_index.html链接,iframe_index.html是弹出层效果,index.html是新打开页面效果
        var _src = "http://connect.qq.com/widget/shareqq/index.html?" + s.join('&') ;
        window.open(_src);
    };
   
</script>

三、实现分享内容到QQ空间功能

实现分享内容到QQ空间功能和二中实现分享到QQ好友功能的配置使用方法完全一样,只是将前面的链接http://connect.qq.com/widget/shareqq/index.html改成http:

//sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey即可,?后面的完全一样

以上内容参考网址来源于http://connect.qq.com/

QQ JS_SDk相关功能接口的更多相关文章

  1. JNI的替代者—使用JNA访问Java外部功能接口

    摘自:http://www.cnblogs.com/lanxuezaipiao/p/3635556.html JNI的替代者-使用JNA访问Java外部功能接口 1. JNA简单介绍 先说JNI(Ja ...

  2. 微信平台接入Web页面功能接口(C#)

    微信平台接入web页面功能接口 今年因工作需要,通过微信平台接入公司的Wap页面,回忆下,记录内容,方面以后使用. 1.成为开发者后,你才可以使用公众平台的开发功能.需要填写URL和ToKen,接口配 ...

  3. Excel催化剂开源第31波-pdf相关功能实现及类库介绍

    在Excel催化剂刚推出的pdf相关功能中,反馈很热烈,不止是用户层面好多人喜欢,也听到在.NET开发群里有询问pdf在winform上展现的功能诉求,一段时间没写开源篇,生怕大家以为Excel催化剂 ...

  4. 【C/C++开发】【Java开发】JNI的替代者—使用JNA访问Java外部功能接口

    JNI的替代者-使用JNA访问Java外部功能接口 1. JNA简单介绍 先说JNI(Java Native Interface)吧,有过不同语言间通信经历的一般都知道,它允许Java代码和其他语言( ...

  5. python web自动化测试框架搭建(功能&接口)——通用模块

    1.通用模块: config.conf: 公共配置文件,配置报告.日志.截图路径,以及邮件相关配置 [report] reportpath = E:\workspace\WebAutomation\s ...

  6. Nginx Rewrite相关功能

    目录 Nginx Rewrite相关功能 ngx_http_rewrite_module模块指令: if指令: set指令: break指令: return指令: rewrite_log指令: rew ...

  7. 使用Hot Chocolate和.NET 6构建GraphQL应用(2) —— 实体相关功能实现

    系列导航 使用Hot Chocolate和.NET 6构建GraphQL应用文章索引 需求 在本文中,我们将会准备好用于实现GraphQL接口所依赖的底层数据,为下一篇文章具体实现GraphQL接口做 ...

  8. 用JQuery仿造QQ头像裁剪功能

    最近工作真心忙碌,几乎没时间写博客.今天趁周末来仿一个QQ头像裁剪功能插件.效果如下: 所有文件都可在我的Github上下载,从头到尾从简到繁按步骤一共分了9个HTML文件,每个步骤文件里的注释都写的 ...

  9. QQ空间分享功能(二)

    http://sns.z.qq.com/tools/share/demo_html.jsp  手机QQ空间分享功能接入指引: 1.请求地址: http://sns.z.qq.com/share 2.请 ...

随机推荐

  1. linq to entity 查询数据表是错误解决

    错误提示: 解决方式:换成了 linq to sql方式

  2. yuecheng 笑话

    http://115.28.189.219:9898/stock/manager_articles/fundamentals 要闻 http://115.28.189.219:9898/stock/m ...

  3. java 并发性和多线程 -- 读感 (一 线程的基本概念部分)

    1.目录略览      线程的基本概念:介绍线程的优点,代价,并发编程的模型.如何创建运行java 线程.      线程间通讯的机制:竞态条件与临界区,线程安全和共享资源与不可变性.java内存模型 ...

  4. 黑马程序员+ADO.Net基础(下)

    ---------------<a href="http://edu.csdn.net"target="blank">ASP.Net+Android ...

  5. 如何实现:录制视频聊天的全过程? 【低调赠送:QQ高仿版GG 4.3 最新源码】

    前段时间做个项目,客户需要将视频对话的整个过程录制下来,这样,以后就可以随时观看.想来录制整个视频聊天的过程这样的功能应该是个比较常见的需求,比如,基于网络语音视频的1:1的英语口语辅导,如果能将辅导 ...

  6. DeviceOne 竟然做出来如此复杂的App

    分享来自DeviceOne论坛 此文章分享自DeviceOne的论坛,论坛上的用户分享,下面有二维码扫描,可以进行安装和试用.支持android和ios两个 操作系统. 这个还没做完,目前已经完成了初 ...

  7. 浅析Ajax跨域原理及JQuery中的实现分析

    AJAX 的出现使得网页可以通过在后台与服务器进行少量数据交换,实现网页的局部刷新.但是出于安全的考虑,ajax不允许跨域通信.如果尝试从不同的域请求数据,就会出现错误.如果能控制数据驻留的远程服务器 ...

  8. java提高篇(十五)-----关键字final

    在程序设计中,我们有时可能希望某些数据是不能够改变的,这个时候final就有用武之地了.final是java的关键字,它所表示的是“这部分是无法修改的”.不想被改变的原因有两个:效率.设计.使用到fi ...

  9. jni和java对应关系

    Java 类型 本地类型 描述 boolean jboolean C/C++8位整型 byte jbyte C/C++带符号的8位整型 char jchar C/C++无符号的16位整型 short ...

  10. 破解 失控神域 dat文件格式。

    CrackHelper.loadByteArray('../unit_data.dat', function(b:ByteArray):void{ b.uncompress(); var s:Stri ...