网页右侧悬浮滚动在线qq客服代码示例


Posted in Javascript onApril 28, 2014

网页右侧悬浮滚动QQ在线客服代码

网页右侧悬浮滚动在线qq客服代码示例

function myEvent(obj,ev,fn){
 if (obj.attachEvent){
  obj.attachEvent('on'+ev,fn);
 }else{
  obj.addEventListener(ev,fn,false);
 };
};
function getbyClass(id,sClass){
 var oParent = document.getElementById(id);
 var all = oParent.getElementsByTagName('*');
 var array = [];
 for (var i=0; i<all.length; i++){
  if (all[i].className == sClass){
   array.push(all[i]);
  };
 };
 return array;
};
function getStyle(obj,name){
 if(obj.currentStyle){
  return obj.currentStyle[name];
 }else{
  return getComputedStyle(obj,false)[name];
 };
};
function Running(obj,json,fnEnd){
 clearInterval(obj.timer);
 obj.timer=setInterval(function(){
  var now=0;
  var bStop=true;
  for (var attr in json){
   if(attr=='opacity'){
    now=Math.round(parseFloat(getStyle(obj,attr))*100);
   }else{
    now=parseInt(getStyle(obj,attr));
   };
   var speed=(json[attr]-now)/5;
   speed=speed>0?Math.ceil(speed):Math.floor(speed);
   if(now!=json[attr])bStop=false;
   if(attr=='opacity'){
    obj.style.filter='alpha(opacity:'+now+speed+')';
    obj.style.opacity=(now+speed)/100;
   }else{
    obj.style[attr]=speed+now+'px';
   };
  }
  if(bStop){
   clearInterval(obj.timer);
   if(fnEnd)fnEnd();
  }
 }, 30);
}
function Flexing(obj,json,fnEnd){
 clearInterval(obj.timer);
 obj.timer=setInterval(function(){
  var now=0;
  var bStop=true;
  for (var attr in json){
   if(!obj.speed)obj.speed={};
   if(!obj.speed[attr])obj.speed[attr]=0;
   now=parseInt(getStyle(obj,attr));
   if(Math.abs(json[attr]-now)>1 || Math.abs(obj.speed[attr])>1){
    bStop=false;
    obj.speed[attr]+=(json[attr]-now)/5;
    obj.speed[attr]*=0.85;
    var MaxSpeed=65;
    if(Math.abs(obj.speed[attr])>MaxSpeed){
     obj.speed[attr]=obj.speed[attr]>0?MaxSpeed:-MaxSpeed;
    };
    obj.style[attr]=now+obj.speed[attr]+'px';
   };
  };
  if(bStop){
   clearInterval(obj.timer);
   obj.style[attr]=json[attr]+'px';
   if(fnEnd)fnEnd();
  };
 }, 30);
}
function setqq(obj,num){
 if (obj.length!=num.length){
  alert('\nspan的个数与QQ号码的个数不符,请设置5个QQ号码!\n\n[设置未成功!]');
  return;
 }else{
  for (var i=0; i<num.length; i++){
   obj[i].innerHTML = "<a target='_blank' href='http://wpa.qq.com/msgrd?v=3&uin="+num[i]+"&site=qq&menu=yes'><img border='0' src='http://wpa.qq.com/pa?p=2:"+num[i]+":51' alt='点击咨询' title='点击咨询'/></a>";
  };
 };
};
function settop(id,id2,top){
 var obj = document.getElementById(id);
 var box = document.getElementById(id2);
 obj.style.top = box.style.top = top+'px';
};
function dealy(id,time){
 var obj = document.getElementById(id);
 var timer = setTimeout(function(){
  Flexing(obj,{right:-100});
 },time*1000);
};
function click_fn(id,id2){
 var obj = document.getElementById(id);
 var box = document.getElementById(id2);
 obj.onclick = function(){
  Running(obj,{right:-200},function(){
   box.style.display = 'block';
   Running(box,{right:10, opacity:100});     
  });
 };
 box.onclick = function(){
  timer = setTimeout(function(){
   Running(box,{right:-220,opacity:0},function(){
    box.style.display = 'none';
    Flexing(obj,{right:-100});
   });   
  },3000);
 };
};
Javascript 相关文章推荐
JavaScript中null与undefined分析
Jul 25 Javascript
js文件中调用js的实现方法小结
Oct 23 Javascript
Array.prototype.slice 使用扩展
Jun 09 Javascript
浅析JS刷新框架中的其他页面 &amp;&amp; JS刷新窗口方法汇总
Jul 08 Javascript
JS实现局部选择打印和局部不选择打印
Apr 03 Javascript
再探JavaScript作用域
Sep 24 Javascript
JavaScript提高性能知识点汇总
Jan 15 Javascript
浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题
Sep 02 Javascript
还不懂递归?读完这篇文章保证你会懂
Jul 29 Javascript
详解Angular6 热加载配置方案
Aug 18 Javascript
jQuery实现带3D切割效果的轮播图功能示例【附源码下载】
Apr 04 jQuery
Vue ​v-model相关知识总结
Jan 28 Vue.js
一个简单的jquery进度条示例
Apr 28 #Javascript
javascript处理表单示例(javascript提交表单)
Apr 28 #Javascript
js对象内部访问this修饰的成员函数示例
Apr 27 #Javascript
node.js中的socket.io入门实例
Apr 26 #Javascript
jquery鼠标放上去显示悬浮层即弹出定位的div层
Apr 25 #Javascript
js控制容器隐藏出现防止样式变化的两种方法
Apr 25 #Javascript
Jquery 点击按钮自动高亮实现原理及代码
Apr 25 #Javascript
You might like
用PHP将网址字符串转换成超链接(网址或email)
2010/05/25 PHP
详解PHP如何更好的利用PHPstorm的自动提示
2017/08/18 PHP
PHP中Static(静态)关键字功能与用法实例分析
2019/04/05 PHP
JavaScript 数组循环引起的思考
2010/01/01 Javascript
分享Javascript中最常用的55个经典小技巧
2013/11/29 Javascript
JavaScript常用脚本汇总(二)
2015/03/04 Javascript
IE8利用自带的setCapture和releaseCapture解决iframe的拖拽事件方法
2016/10/25 Javascript
xmlplus组件设计系列之分隔框(DividedBox)(8)
2017/05/02 Javascript
js数字滑动时钟的简单实现(示例讲解)
2017/08/14 Javascript
Vue2.5学习笔记之如何在项目中使用和配置Vue
2018/09/26 Javascript
python重试装饰器示例
2014/02/11 Python
win与linux系统中python requests 安装
2016/12/04 Python
python删除文本中行数标签的方法
2018/05/31 Python
Python闭包执行时值的传递方式实例分析
2018/06/04 Python
Python中pandas dataframe删除一行或一列:drop函数详解
2018/07/03 Python
pandas.DataFrame删除/选取含有特定数值的行或列实例
2018/11/07 Python
对python打乱数据集中X,y标签对的方法详解
2018/12/14 Python
在Pandas中DataFrame数据合并,连接(concat,merge,join)的实例
2019/01/29 Python
django模板加载静态文件的方法步骤
2019/03/01 Python
django创建最简单HTML页面跳转方法
2019/08/16 Python
numpy:找到指定元素的索引示例
2019/11/26 Python
python如何通过闭包实现计算器的功能
2020/02/22 Python
QML用PathView实现轮播图
2020/06/03 Python
open_basedir restriction in effect. 原因与解决方法
2021/03/14 PHP
Canvas获取视频第一帧缩略图的实现
2020/11/11 HTML / CSS
英国袜子店:Sock Shop
2017/01/11 全球购物
请用用Java代码写一个堆栈
2012/01/26 面试题
求职推荐信范文
2013/12/01 职场文书
致标枪运动员广播稿
2014/02/06 职场文书
酒店总经理职务说明书
2014/02/26 职场文书
色戒观后感
2015/06/12 职场文书
2019开业庆典剪彩仪式主持词!
2019/07/22 职场文书
golang 实现对Map进行键值自定义排序
2021/04/28 Golang
教你用Python爬取英雄联盟皮肤原画
2021/06/13 Python
FP-growth算法发现频繁项集——构建FP树
2021/06/24 Python
CSS实现两列布局的N种方法
2021/08/02 HTML / CSS