例子,
<!--随机漂浮广告开始-->
<div id="float" style="position:absolute; z-index:3;(我建议大家把这里设为100,这样浮动图就不会被遮住了) left: 512px; width: 83px; top: 9px; height: 53px;">
<img src="piaofu.gif" width="100" height="50"> </div>
<script type="text/javascript">
<!--随机漂浮广告 -->
var xpos=0,ypos=0;//x,y轴坐标
var xon=0;//图片在x轴移动方向
var yon=0;//图片在y轴移动方向
var step=1; //移动距离
var img=document.getelementbyidx_x("float");//图片层
function floatp()
{
var width=document.body.clientwidth;//浏览器宽度
var height=document.body.clientheight;//浏览器高度
var hoffset=img.offsetheight;//图片高度
var woffset=img.offsetwidth;//图片宽度
img.style.left=xpos+document.body.scrollleft;//图片距离浏览器左侧位置
img.style.top=ypos+document.body.scrolltop;//图片距离浏览器顶端位置
if(yon==0){
ypos=ypos+step;//图片在y轴方向上下移动
}else{
ypos=ypos-step;
}
if(ypos<0){//飘到顶端,沿y轴向下移动
yon=0;
ypos=0;
}
if(ypos>=(height-hoffset)){//飘到低端,沿y轴向上移动
yon=1;
ypos=(height-hoffset);
}
if(xon==0){//x轴向右移动
xpos=xpos+step;
}else{
xpos=xpos-step;//x轴向左移动
}
if(xpos<0){//飘到左侧时沿x轴向右移动
xon=0;
xpos=0;
}
if(xpos>=(width-woffset)){//飘到右侧时沿x轴向左移动
xon=1;
xpos=(width-woffset);
}
settimeout("floatp()",30);//定时调用。
}
window.onload=floatp();
</script>
<script>
var x = 50,y = 60 //浮动层的初始位置,分别对应层的初始x坐标和y坐标
var xin = true, yin = true //判断层的x坐标和y坐标是否在在控制范围之内,xin为真是层向右移动,否则向左;yin为真是层向下移动,否则向上
var step = 1 //层移动的步长,值越大移动速度越快
var delay = 10 //层移动的时间间隔,单位为毫秒,值越小移动速度越快
var obj=document.getelementbyidx_x("float") //捕获id为ad的层作为漂浮目标
function floatad() {
var l=t=0 //层移动范围的左边界(l)和上边界(t)坐标
var r= document.body.clientwidth-obj.offsetwidth //层移动的右边界
var b = document.body.clientheight-obj.offsetheight //层移动的下边界
obj.style.left = x + document.body.scrollleft //更新层的x坐标,实现x轴方向上的运动;document.body.scrollleft为文档区域的滚动条向右拉的距离,以保证在滚动条右拉时层仍在可见范围内
obj.style.top = y + document.body.scrolltop //更新层的y坐标,实现y轴方向上的运动;document.body.scrolltop为文档区域的滚动条向下拉的距离,以保证在滚动条下拉时层仍在可见范围内
x = x + step*(xin?1:-1) //通过判断层的范围决定层在x轴上的运动方向
if (x < l) { xin = true; x = l} //层超出左边界时的处理
if (x > r){ xin = false; x = r} //层超出右边界时的处理
y = y + step*(yin?1:-1) //通过判断层的范围决定层在y轴上的运动方向
if (y < t) { yin = true; y = t } //层超出上边界时的处理
if (y > b) { yin = false; y = b } //层超出下边界时的处理
}
var itl= setinterval("floatad()", delay) //每delay秒执行一次floatad函数
obj.onmouseover=function(){clearinterval(itl)} //层在鼠标移上时清除上面的间隔事件,实现层在的鼠标移上时停止运动的效果
obj.onmouseout=function(){itl=setinterval("floatad()", delay)} //层在鼠标移开时开始间隔事件,实现层在的鼠标移开时继续运动的效果
</script>
注意:
在网页中插入flash和浮动广告,你会发现在浮动广告浮到flash处时会在下面,
我们如何解决这个问题呢,
其它很简单
在flash代码的位置加入下面语句就可以了
<param name="wmode" value="opaque">
例: