客服QQ

 

Code

<script language="javascript" type="text/javascript" src="home/js/float.js"></script>
<script type="text/javascript">
    function Hid()
    {
        document.getElementById("test4").style.display="none";
    }
</script>
<style type="text/css">
div.floats {/*浮动容器通用样式*/
 position:absolute;
 left:-1000px;
 /*上面两句是必需的,下面看实际情况去定义了*/
 /*border:solid 1px #777;*/
 padding:3px;
 /*background:#333;*/
 color:white;
 width:112px;
 height:173px;
 opacity: 0.5;
 /*filter:alpha(opacity=50);*/
 
}
div#test4{top:200px;}/*左右定位的两个容器初始高度*/
</style>

<div id="test4" class="floats" style="background-image:url('home/gif/qq.gif')"><table width="100%" onclick="Hid();" style="height:60px"><tr><td></td></tr></table><script type="text/javascript" src="/home/js/service2.js"></script></div>
<script type="text/javascript">
//参数分别为 对象ID,顶部距离,距中部距离,定位方式为居中向两边(值可选为:left,mid,right),第五个参数待定,还在考虑上下定位,如上下距中间定位等,有时间再扩展吧~
moveTips('test4','200','10','right',"1");
</script>

 

float.js

// JScript 文件
var D=new Function('obj','return document.getElementById(obj);')
function htmlbody(){
 return (
  document.documentElement.clientHeight<=document.body.clientHeight
  &&document.documentElement.clientHeight!=0
 )
 ?document.documentElement:document.body;
}
//浏览器滚动条位置
function scrollLeft(){return (!window.pageYOffset)?htmlbody().scrollLeft:window.pageXOffset;}
function scrollTop(){return (!window.innerHeight)?htmlbody().scrollTop:window.pageYOffset;}

//实际应距左距离
function getleft(strobjs,strLeftType,strleft){
 var temp_getleft = 0;
 if (strLeftType=="left"){
  temp_getleft = scrollLeft()*1 + strleft*1;
 }else if (strLeftType=="mid"){
  (strleft*1<0)
  ?temp_getleft = scrollLeft()*1 + strleft*1
  + htmlbody().clientWidth*1/2 - strobjs.offsetWidth*1
  :temp_getleft = (scrollLeft()*1+strleft*1 + htmlbody().clientWidth*1/2);
 }else if (strLeftType=="right"){
   temp_getleft
   = scrollLeft()*1 + htmlbody().clientWidth*1
   - strleft*1 - strobjs.offsetWidth*1;
 }
 return temp_getleft;
}

function moveTips(strobj,theTop,theLeft,theLeftType) {
 var old,nowobj = D(strobj);
 var nowleft = nowobj.style.left.replace("px","")*1;//返回在改变窗口大小或移动横滚动条前的距左部距离(数值)
 var temp_left = getleft(nowobj,theLeftType,theLeft);//实际应距左距离
 var re_theTop = theTop;
 if (temp_left!=nowleft){//横向递增
  (Math.abs(temp_left-nowleft)>3&&Math.abs(temp_left-nowleft)<600)
  ?((temp_left>nowleft)?nowleft += Math.abs(temp_left-nowleft)/5
  :nowleft -= Math.abs(temp_left-nowleft)/5)
  :nowleft = temp_left;
  nowobj.style.left = nowleft + "px";
 }
 if (!openweb){old = re_theTop;var openweb;}/*这是默认高度*/;
  var pos,tt=50;
  pos = scrollTop()*1-nowobj.offsetTop*1+re_theTop*1;
  pos = nowobj.offsetTop+pos/10;//纵向开始递增
  if (pos < re_theTop) pos = re_theTop;
  if (pos != old) {nowobj.style.top = pos+"px";tt=5;}
  old = pos;
  setTimeout("moveTips('"+strobj+"','"+theTop+"','"+theLeft+"','"+theLeftType+"')",tt);
}


/*var x = 50,y = 60
var xin = true, yin = true
var step = 1
var delay = 10
var obj=document.getElementById("ad")
function floatAD()
{
    var L=T=0
    var R= document.documentElement.clientWidth-obj.offsetWidth
    var B = document.documentElement.clientHeight-obj.offsetHeight
    obj.style.left = x + document.body.scrollLeft
    obj.style.top = y + document.body.scrollTop
    x = x + step*(xin?1:-1)
    if (x < L) { xin = true; x = L}
    if (x > R){ xin = false; x = R}
    y = y + step*(yin?1:-1)
    if (y < T) { yin = true; y = T }
    if (y > B) { yin = false; y = B }
}
var itl= setInterval("floatAD()", delay)
obj.onmouseover=function(){clearInterval(itl)}
obj.onmouseout=function(){itl=setInterval("floatAD()", delay)}*/

posted @ 2009-03-10 10:06  hb  阅读(396)  评论(0编辑  收藏  举报