JS随机漂浮广告代码具体实例


Posted in Javascript onNovember 19, 2013
<!--随机漂浮广告开始-->
<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">
例:
如果下面是flash所在位置的代码:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="780" height="165">
<param name="movie" value="banner1.swf">
<param name="quality" value="high">
<param name="menu" value="false">
<param name="wmode" value="opaque"><!--主要是这句-->
<embed src="banner1.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="780" height="165"></embed>
</object>
Javascript 相关文章推荐
Javascript 汉字字节判断
Aug 01 Javascript
基于jquery的一个简单的脚本验证插件
Apr 05 Javascript
javascript cookie操作类的实现代码小结附使用方法
Jun 02 Javascript
Extjs4 GridPanel的主要配置参数详细介绍
Apr 18 Javascript
Extjs实现下拉菜单效果
Apr 01 Javascript
利用ES6语法重构React组件详解
Mar 02 Javascript
jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码
Mar 21 jQuery
vue.js实现单选框、复选框和下拉框示例
Jul 18 Javascript
layer 关闭指定弹出层的例子
Sep 25 Javascript
解决LayUI加上form.render()下拉框和单选以及复选框不出来的问题
Sep 27 Javascript
vue 点击其他区域关闭自定义div操作
Jul 17 Javascript
Vant Weapp组件踩坑:picker的初始赋值解决
Nov 12 Javascript
JS简单实现元素复制示例附图
Nov 19 #Javascript
js获取当月最后一天实例代码
Nov 19 #Javascript
基于jquery自定义的漂亮单选按钮RadioButton
Nov 19 #Javascript
基于jquery扩展漂亮的下拉框可以二次修改
Nov 19 #Javascript
showModelDialog弹出文件下载窗口的使用示例
Nov 19 #Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
Nov 19 #Javascript
jquery showModelDialog的使用方法示例详解
Nov 19 #Javascript
You might like
php实现无限级分类实现代码(递归方法)
2011/01/01 PHP
利用curl抓取远程页面内容的示例代码
2013/07/23 PHP
PHP实现的链式队列结构示例
2017/09/15 PHP
JavaScript语句可以不以;结尾的烦恼
2007/03/08 Javascript
js 创建快捷方式的代码(fso)
2010/11/19 Javascript
用Js实现的动态增加表格示例自己写的
2013/10/21 Javascript
使用jquery prev()方法找到同级的前一个元素
2014/07/11 Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
2015/10/08 Javascript
浅谈JavaScript中的对象及Promise对象的实现
2015/11/15 Javascript
如何动态加载外部Javascript文件
2015/12/02 Javascript
移动端利用H5实现压缩图片上传功能
2017/03/29 Javascript
详解Angular Reactive Form 表单验证
2017/07/06 Javascript
React路由管理之React Router总结
2018/05/10 Javascript
基于Vue的延迟加载插件vue-view-lazy
2018/05/21 Javascript
Vue从TodoList中学父子组件通信
2019/02/05 Javascript
vue实现自定义H5视频播放器的方法步骤
2019/07/01 Javascript
Node.js API详解之 net模块实例分析
2020/05/18 Javascript
Bootstrap FileInput实现图片上传功能
2021/01/28 Javascript
[01:52]2014DOTA2西雅图邀请赛 V社开大会你不知道的小秘密
2014/07/08 DOTA
Python HTMLParser模块解析html获取url实例
2015/04/08 Python
基于Python函数的作用域规则和闭包(详解)
2017/11/29 Python
Python使用三种方法实现PCA算法
2017/12/12 Python
Python datetime模块使用方法小结
2020/06/18 Python
基于tf.shape(tensor)和tensor.shape()的区别说明
2020/06/30 Python
无谷物狗粮:Pooch & Mutt
2018/05/23 全球购物
Static Nested Class 和 Inner Class的不同
2013/11/28 面试题
遗体告别仪式答谢词
2014/01/23 职场文书
产品生产计划书
2014/05/07 职场文书
2014年党员自我评议总结
2014/09/23 职场文书
2014班子成员自我剖析材料思想汇报
2014/10/01 职场文书
四风之害观后感
2015/06/09 职场文书
运动会通讯稿50字
2015/07/20 职场文书
python3 删除所有自定义变量的操作
2021/04/08 Python
python3读取文件指定行的三种方法
2021/05/24 Python
Nginx图片服务器配置之后图片访问404的问题解决
2022/03/21 Servers
Python中itertools库的四个函数介绍
2022/04/06 Python