功夫码

js分享到qq分享到微信分享到微博js代码

晓峰 时间:2020-10-18 23:01:24 阅读:61
--------------------------------------------------------- Ta 只分享的内容开始 ---------------------------------------------------------------------

js分享到qq分享到微信分享到微博js代码

废话不多说直接带走都可以用

<div>分享到:</div> 
<div onclick="shareTo('qzone')">     
    <img src="https://zixuephp.net/static/images/qqzoneshare.png" width="32"> <!-- 分享图片不再提供访问 -->
</div> 
<div onclick="shareTo('qq')">     
    <img src="https://zixuephp.net/static/images/qqshare.png" width="32"> 
</div> 
<div onclick="shareTo('sina')">     
    <img src="https://zixuephp.net/static/images/sinaweiboshare.png" width="32"> 
</div> 
<div onclick="shareTo('wechat')">     
    <img src="https://zixuephp.net/static/images/wechatshare.png" width="32"> 
</div>
function shareTo(types){
 
    var title,imageUrl,url,description,keywords;
 
    //获取文章标题
    title = document.title;
 
    //获取网页中内容的第一张图片地址作为分享图
    //imageUrl = document.images[0].src;
    imageUrl = document.getElementById("pcdetails").getElementsByTagName("img")[0];
    //当内容中没有图片时,设置分享图片为网站logo
    if(typeof imageUrl == 'undefined'){
        imageUrl = 'https://'+window.location.host+'/static/images/logo.png';
    } else {
        imageUrl = imageUrl.src;
    }
 
    //获取当前网页url
    url = document.location.href;
 
    //获取网页描述
    description = document.querySelector('meta[name="description"]').getAttribute('content');
 
    //获取网页关键字
    keywords = document.querySelector('meta[name="keywords"]').getAttribute('content');
 
    //qq空间接口的传参
    if(types=='qzone'){
        window.open('https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url='+url+'&sharesource=qzone&title='+title+'&pics='+imageUrl+'&summary='+description);
    }
    //新浪微博接口的传参
    if(types=='sina'){
        window.open('http://service.weibo.com/share/share.php?url='+url+'&sharesource=weibo&title='+title+'&pic='+imageUrl+'&appkey=2706825840');
    }
    //qq好友接口的传参
    if(types == 'qq'){
        window.open('http://connect.qq.com/widget/shareqq/index.html?url='+url+'&sharesource=qzone&title='+title+'&pics='+imageUrl+'&summary='+description+'&desc='+keywords);
    }
    //生成二维码给微信扫描分享
    if(types == 'wechat'){
        //在线二维码(服务器性能限制,仅测试使用,屏蔽非大陆ip访问)
        window.open('https://zixuephp.net/inc/qrcode_img.php?url='+url);
    }
 
}


原理如下

通过qq空间、qq聊天、新浪微博和微信二维码分享平台提供的接口,实现把网页中对应的图片、标题、描述的信息参数用javascript获取后传进接口中,实现一键分享。使用到的接口(测试时需要登录,网址和图片必须是公网的,不能localhost,QQ图片不能太宽,太宽标题描述会undefiend):


1.分享到QQ空间接口:

https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey

?url=你的网址

&sharesource=qzone

&title=你的分享标题

&pics=你的分享图片

&summary=你的分享描述信息


2.分享给QQ好友接口:

http://connect.qq.com/widget/shareqq/index.html

?url=你的分享网址

&sharesource=qzone

&title=你的分享标题

&pics=你的分享图片地址

&summary=你的分享描述

&desc=你的分享简述


3.分享到新浪微博接口:

http://service.weibo.com/share/share.php

?url=你的分享网址

&sharesource=weibo

&title=你的分享标题

&pic=你的分享图片

&appkey=你的key需要在新浪微博开放平台中申请


--------------------------------------------------------- Ta 只分享了这些内容 ---------------------------------------------------------------------

本文来源:功夫码(gongfuma.com)
声明:本文系功夫码原创稿件,版权属[功夫码 gongfuma.com]所有。
未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:功夫码",违者将依法追究责任。

相关文章

  • 回到顶部