代码如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">加上这段头声明,浮动效果就没了,但是不加头声明也是不行的,不然css代码就失效了-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script language="javascript">
var x=50,y=60;
var xin=true ,yin=true;
var step=1;
var delay=5;
function floatAD()
{var l=t=0;
var r=document.body.clientWidth-document.getElementById("fly").offsetWidth;
var b=document.body.clientHeight-document.getElementById("fly").offsetHeight;
document.getElementById("fly").style.left=x+document.body.scrollLeft;
document.getElementById("fly").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)
document.getElementById("fly").onmouseover=function(){clearInterval(itl)}
document.getElementById("fly").onmouseout=function(){itl=setInterval("floatAD()", delay)}</script>
</head><body><div id="fly" style="POSITION: absolute"><img src="img_2009/main_index_11.jpg" alt="浮动窗口"></div>
</body>
</html>
有人说把document.body.scrollTop改成document.documentElement.scrollTop就行了,我改了之后运行,仍然没有实现漂浮效果,期待高手来解决这个问题!
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">加上这段头声明,浮动效果就没了,但是不加头声明也是不行的,不然css代码就失效了-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script language="javascript">
var x=50,y=60;
var xin=true ,yin=true;
var step=1;
var delay=5;
function floatAD()
{var l=t=0;
var r=document.body.clientWidth-document.getElementById("fly").offsetWidth;
var b=document.body.clientHeight-document.getElementById("fly").offsetHeight;
document.getElementById("fly").style.left=x+document.body.scrollLeft;
document.getElementById("fly").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)
document.getElementById("fly").onmouseover=function(){clearInterval(itl)}
document.getElementById("fly").onmouseout=function(){itl=setInterval("floatAD()", delay)}</script>
</head><body><div id="fly" style="POSITION: absolute"><img src="img_2009/main_index_11.jpg" alt="浮动窗口"></div>
</body>
</html>
有人说把document.body.scrollTop改成document.documentElement.scrollTop就行了,我改了之后运行,仍然没有实现漂浮效果,期待高手来解决这个问题!
document.body
===>
document.documentElement
PS:LZ这段JS要等页面加载完毕后才可以运行,我在JS标签中加入了defer属性
作用类似与window.onload
<!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=gb2312" />
<title>无标题文档 </title>
<script language="javascript" defer>
var x=50,y=60;
var xin=true ,yin=true;
var step=1;
var delay=5;
function floatAD()
{var l=t=0;
var r=document.documentElement.clientWidth-document.getElementById("fly").offsetWidth;
var b=document.documentElement.clientHeight-document.getElementById("fly").offsetHeight;
document.getElementById("fly").style.left=x+document.documentElement.scrollLeft+"px";
document.getElementById("fly").style.top=y+document.documentElement.scrollTop+"px";
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)
document.getElementById("fly").onmouseover=function(){clearInterval(itl)}
document.getElementById("fly").onmouseout=function(){itl=setInterval("floatAD()", delay)} </script>
</head> <body> <div id="fly" style="POSITION: absolute"> <img src="img_2009/main_index_11.jpg" alt="浮动窗口"> </div>
</body>
</html>