您的位置:首页 > Web前端 > JavaScript

Js判断QQ在线状态不准确的解决办法

2014-05-22 17:04 337 查看
  腾讯提供多个接口用于给普通商家用户进行在线咨询服务,对于各种流行的在线服务面板,使用的最多就是通过js跨域批量获取qq在线情况,如下图:



  使用了腾讯的批量判断QQ在线接口("http://webpresence.qq.com/getonline?Type=1&qq号:")最后的冒号一定要带上,代码大致如下:

<script type="text/javascript">
var qqNum="";
$(".qqImage").each(function(index,e){
var temp=$(e).attr("id").split('_');
qqNum+=temp[1]+":";
});
//动态创建javascript跨域获取QQ在线状态
var online = new Array();
var url="http://webpresence.qq.com/getonline?Type=1&"+qqNum;
$.getScript(url)
.done(function() {
//scrpit加载完成后执行在线状态图片的改写
$(".qqImage").each(function(index,e){
var temp=$(e).attr("id").split('_');
if(online[index]=="0"){
$(e).attr("src","images/offline.gif");

}
});
})
.fail(function() {
alert("客服暂时不可用");
});
</script>


  但是实验中发现,有部分号码即使在线,在面板中总是反映不在线,开始以为是代码的问题,但是直接通过接口看的确不在线,最好左思右想才感觉貌似腾讯不会这么不注重隐私(明面上),要不然谁都能看到对方的在线状态,即使不是好友,于是发现了开启QQ在线状态的页面,地址:http://shang.qq.com/widget/set.php



  登录后只要选择免费开通即可允许自己的状态被获取,于是问题解决!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: