网页右侧悬浮滚动在线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的with 语句的使用方法
May 09 Javascript
js函数的引用, 关于内存的开销
Sep 17 Javascript
JS实现随机化快速排序的实例代码
Aug 01 Javascript
javascript中2个感叹号的用法实例详解
Sep 04 Javascript
基于jQuery实现的图片切换焦点图整理
Dec 07 Javascript
javascript 继承学习心得总结
Mar 17 Javascript
JavaScript学习笔记整理_关于表达式和语句
Sep 19 Javascript
原生js仿浏览器滚动条效果
Mar 02 Javascript
js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解
Mar 15 Javascript
vue跳转同一个组件,参数不同,页面接收值只接收一次的解决方法
Nov 05 Javascript
JavaScript交换两个变量方法实例
Nov 25 Javascript
vue实现顶部菜单栏
Nov 08 Javascript
一个简单的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使用GIFEncoder类生成的GIF动态图片验证码
2014/07/01 PHP
2014年最新推荐的10款 PHP 开发框架
2014/08/01 PHP
PHP判断字符串长度的两种方法很实用
2015/09/22 PHP
PHP中session跨子域的三种实现方法
2016/07/25 PHP
php桥接模式应用案例分析
2019/10/23 PHP
Javascript 中介者模式实例
2009/12/16 Javascript
jquery 操作DOM案例代码分享
2012/04/05 Javascript
JavaScript自定义事件介绍
2013/08/29 Javascript
jquery获取子节点和父节点的示例代码
2013/09/10 Javascript
jQuery预加载图片常用方法
2015/06/15 Javascript
JavaScript里 ==与===区别详解
2016/08/16 Javascript
详解vuejs之v-for列表渲染
2017/06/22 Javascript
解决html input验证只能输入数字,不能输入其他的问题
2017/07/21 Javascript
Angular.js前台传list数组由后台spring MVC接收数组示例代码
2017/07/31 Javascript
从setTimeout看js函数执行过程
2017/12/19 Javascript
Vue 中如何正确引入第三方模块的方法步骤
2019/05/05 Javascript
一次让你了解全部JavaScript的作用域
2019/06/24 Javascript
vue之debounce属性被移除及处理详解
2019/11/13 Javascript
JS变量提升原理与用法实例浅析
2020/05/22 Javascript
python正则表达式面试题解答
2020/04/28 Python
完美解决Python 2.7不能正常使用pip install的问题
2018/06/12 Python
详解从Django Rest Framework响应中删除空字段
2019/01/11 Python
浅析pandas 数据结构中的DataFrame
2019/10/12 Python
Python txt文件常用读写操作代码实例
2020/08/03 Python
Python中return函数返回值实例用法
2020/11/19 Python
html5是什么_动力节点Java学院整理
2017/07/07 HTML / CSS
维多利亚的秘密官方旗舰店:VICTORIA’S SECRET
2018/04/02 全球购物
任意存:BOXFUL
2018/05/21 全球购物
物流管理专业大学生自荐信
2013/10/04 职场文书
农民工工资支付承诺函
2014/03/31 职场文书
竞选副班长演讲稿
2014/04/24 职场文书
代理人委托书
2014/08/01 职场文书
社团活动总结格式
2014/08/29 职场文书
2014年个人工作总结报告
2014/11/27 职场文书
2015年学校减负工作总结
2015/05/19 职场文书
酒店温馨提示语
2015/07/14 职场文书