javascript版QQ在线聊天挂件
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>javascript版QQ在线聊天</title>
<script language="JavaScript" type="text/javascript">
var online=[];//定义返回数组结果,不可删
//所有QQ号码,ps:QQ号码需要在:http://shang.qq.com/widget/set.php登陆开通服务。否则不行。
var arr=['2604442887','2051745288','1848770385','1120133673','2803313065','2648742550','2094800395','2094513153','2669768587','2654708197','2806803604','2103969859','1774028571','2037063540','2094733504','2327791804','1253815649','2230046791','2103770755','1304620374','2093786904','2849914876','2857556863','2102872570','2813748275','2665689096','2104447022','2843331729','1158460366','1803024257','2568724744','2591950281','2655743296','2103288748','2545706138','2376968019','2105851980','2094285843','2016877549','2094655602','2103184634','1843771362','2328299466','2640794841','2058114350','2050633405','2258529381','2057854571','2093960197','2665560453','1989981124','1602153264','1514350293','402074938','363163864'];
var my_arr=arr.join(":")+':';
var qq_url='http://webpresence.qq.com/getonline?Type=1&'+my_arr;
/****************动态创建JS*********************/
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = qq_url;
head.appendChild(script);
/***********判断JS文件是否加载完成************/
function complete_load(js){
if ((navigator.userAgent.indexOf('MSIE') == -1) ? false: true) {
js.onreadystatechange = function() {
if (this.readyState && this.readyState == "loading") return;
else creatHtml();
};
} else js.onload = function() {
creatHtml();
};
js.onerror = function(){
alert('加载错误。请检查文件路径是否正确!')
};
}
complete_load(script);
/*删除数组索引方法*/
Array.prototype.remove=function(dx)
{
if(isNaN(dx)||dx>this.length){return false;}
for(var i=0,n=0;i<this.length;i++)
{
if(this[i]!=this[dx])
{
this[n++]=this[i]
}
}
this.length-=1
}
/*返回在线QQ*/
function getOnlineQq(arr){
var online_qq = new Array();
online_qq['online'] =[]
online_qq['offline'] = [];
for(var i=0;i<online.length;i++){
if(online[i]==1){
online_qq['online'].push(arr[i]);
}else{
online_qq['offline'].push(arr[i]);
}
}
if(online_qq['online'].length>=10){
online_qq['offline']=[];
online_qq['online'] = getRandQq(online['online'],10);
}else{
var olength = 10- online_qq['online'].length;
online_qq['offline'] = getRandQq(online_qq['offline'],olength);
}
return online_qq;
}
/*动态生成在线QQ*/
function creatHtml(){
var online_qq = getOnlineQq(arr);
var qq_kefu = '<ul>';
for(var i=0;i<online_qq['online'].length;i++){
qq_kefu += '<li><em><img alt="" src="http://www.chinaskin.cn/themes/chinaskin/images/2013/tel_pic/qq1.png" /></em><a href="http://wpa.qq.com/msgrd?v=3&uin='+online_qq['online'][i]+'&site=qq&menu=yes" title="立即咨询" target="_blank">'+online_qq['online'][i]+'</a></li>';
}
for(var i=0;i<online_qq['offline'].length;i++){
qq_kefu += '<li><em><img alt="" src="http://www.chinaskin.cn/themes/chinaskin/images/2013/tel_pic/qq2.png" /></em><a href="http://wpa.qq.com/msgrd?v=3&uin='+online_qq['offline'][i]+'&site=qq&menu=yes" title="立即咨询" target="_blank">'+online_qq['offline'][i]+'</a></li>';
}
qq_kefu += '</ul>';
document.getElementById('webqq').innerHTML = qq_kefu;
}
//返回num个arr元素
function getRandQq(arr,num){
var narr = [];
var index = 0;
var sarr = arr;
if(arr.length<=num){
return arr;
}else{
for(i=0;i<num;i++){
index = Math.round(Math.random() * (arr.length-1));
narr.push(arr[index]);
arr.remove(index);
}
return narr;
}
}
</script>
</head>
<body>
<!--webQQ[-->
<style type="text/css">
img{ border:none;}
*{ list-style:none; padding:0; margin:0;}
a{ text-decoration: none;}
.qqclear:after,.qqclear:before{content:""; display:table;}
.qqclear:after{ clear:both;}
.qqclear{*zoom:1;}
.webqq{width:156px; height:405px;padding-left: 16px;padding-top: 39px; background:url(http://www.chinaskin.cn/themes/chinaskin/images/2013/tel_pic/qq_bg.gif) no-repeat; position: fixed; top:130px; right:0; z-index:99999;_position: absolute;_top: expression(documentElement.scrollTop+150);}
.webqq li{ width:145px; height:39px; overflow:hidden; background:url(http://www.chinaskin.cn/themes/chinaskin/images/2013/tel_pic/no_hover.jpg) no-repeat; position:relative; zoom:1;}
.webqq li:hover{ background: url(http://www.chinaskin.cn/themes/chinaskin/images/2013/tel_pic/hover.jpg) no-repeat; cursor:pointer;}
.webqq li em{ position:absolute; display:block; width:24px; height:27px; left:5px; top:5px;}
.webqq li a{ display:block; line-height: 58px; height: 39px; text-indent: 40px; color:#f00;}
</style>
<div class="webqq" id="webqq">
</div>
<!--]end webQQ-->
<div style="font-size:14px;">
ps:生成随机十个在线的QQ。每次刷新重新随机排序一次。。
</div>
</body>
</html>
javascript版QQ在线聊天挂件的更多相关文章
- 微信公众平台中添加qq在线聊天代码
微信公众平台是个不错的媒体,可以和你的小伙伴们即时交流,但你的小伙伴们是用手机上的微信,打字自然就慢了:有人说用微信网页版,那个也不习惯,再说也不一定所有人都知道网页版微信.(2014.01.22更新 ...
- QQ在线聊天代码获取和使用教程
在网站上挂上悬浮QQ是一种有效的推广方式,QQ正常情况下是不被允许临时会话的,需要加为好友才可以,这样很不友好, 当今每个行业都是有很多人在做,竞争很激烈,对客户的友好是增加订单的有效途径. 地址:h ...
- PC端页面如何调用QQ进行在线聊天?
pc端如何实现QQ在线咨询? html代码如下: <a href="tencent://message/?uin=1234567&Site=Sambow&Menu=ye ...
- Web版的各种聊天工具
直到近期为止,我们经常使用的即时聊天工具(QQ.msn等)了Web版,大家不用下载庞大软件,直接打开网页就能够与自己的好友聊天,非常方便.在此将时汇总 便于大家查找 节约大 ...
- 网页中插入QQ在线功能
网页中插入QQ在线功能 本随笔记录的是网页中如何插入qq在线聊天,这里讲解的是 普通QQ在线聊天操作. 例:第一种方式 使用 tencent://message/?uin=QQ号码&Site ...
- 在线聊天室的实现(1)--websocket协议和javascript版的api
前言: 大家刚学socket编程的时候, 往往以聊天室作为学习DEMO, 实现简单且上手容易. 该Demo被不同语言实现和演绎, 网上相关资料亦不胜枚举. 以至于很多技术书籍在讲解网络相关的编程时, ...
- java版的类似飞秋的局域网在线聊天项目
原文链接:http://www.cnblogs.com/wangleiblog/articles/5323305.html 转载请注明 最近在弄一个java版的局域网在线聊天项目,功能跟飞秋差不多.p ...
- 手机web页面调用手机QQ实现在线聊天的效果
html代码如下: <a href="javascript:;" onclick="chatQQ()">QQ咨询</a> js代码如下: ...
- java在线聊天项目1.3版 ——设计好友列表框功能
设计好友列表框功能,思路—— 1.当客户端成功登陆后,则客户端把成功登陆信息发送给服务端, 2.由服务端将接收到来自各个成功登陆的客户端的用户信息添加进好友列表, 3.每当有成功登陆的用户就向各个客户 ...
随机推荐
- mysql优化 - mysql 的 hint
FORCE INDEX 强制索引 只使用建立在field1上的索引,而不使用其它字段上的索引. SELECT * FROM table1 FORCE INDEX (field1) IGNORE IND ...
- 编译TWRP-recovery教程及源码地址
TWRP这个是一个老外的开源项目,全称Team-Win-Recovery-Project Source:https://github.com/TeamWin/Team-Win-Recovery-Pro ...
- 虚拟机显卡分配过高的警告(Insufficient video RAM)
最近机房挪机柜,网线拔拔插插,又在虚拟机上配置了网卡的各项设置,其中一个虚拟机的网站这两天经常无法访问, 于是关注了一下虚拟机的“事件”,发现另外一个跳转网站的警告: 于是去vmware的官网上找到了 ...
- 转:内核中的内存申请:kmalloc、vmalloc、kzalloc、kcalloc、get_free_pages
在内核模块中申请分配内存需要使用内核中的专用API:kmalloc.vmalloc.kzalloc.kcalloc.get_free_pages;当然,设备驱动程序也不例外;对于提供了MMU功能的处理 ...
- 当DOCKER遇上ESXI
特别是你要为DOCKER窗口设置静态IP,且和公司局域网打成一片的时候, 苦逼的测试就会开始,我差不多前前后后测试了四五天,一百多个容器报废. NETNS,NSENTER,PIPWORK,各种镜像合下 ...
- 模糊语意变数、规则和模糊运算--AForge.NET框架的使用(二)
原文:模糊语意变数.规则和模糊运算--AForge.NET框架的使用(二) 语意变数(Linguistic Variable) 语意变数存储了数个语意量(标签),每个语意量包含一个识别名和模糊集合.在 ...
- iOS 9之分屏多任务(Split View)
金田(github 示例源码) 多任务(multitasking)算是iOS9中最引人瞩目的核心新特性了,之前越狱版用户就用过类似的插件,微软的 苏菲 (Windows Surface)系列也有分屏多 ...
- MD中bitmap源代码分析--SYNC IO和RAID5的补充
最近在做bwraid的R6的设计工作,需要调研一下bitmap下刷磁盘的IO属性(是否为SYNC IO),还有raid5中bitmap的存储和工作方式. 1.bitmap刷磁盘是否为 SYNC IO? ...
- hdu4324 拓扑排序
#include<cstdio> #include<string.h> #define maxn 2013 char M[maxn][maxn]; int du[maxn]={ ...
- linux下常用FTP命令
linux下常用FTP命令 1. 连接ftp服务器 1. 连接ftp服务器格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1b)服 ...