JavaScript实现网页上的浮动广告的简单方法


Posted in Javascript onJune 14, 2013

漫游于网络之间,你会发觉,因特网不但是信息的海洋,也是广告的海洋。除了普通的Gif Banner、Flash外,浮动广告也是时下网上较为流行的广告形式之一。当你拖动浏览器的滚动条时,这种在页面上浮动的广告,可以跟随屏幕一起移动。尽管这种效果对于广告展示有相当的实用价值,但对浏览你网页的人来讲,这则是个既妨碍阅读,又影响阅读兴趣的东西,因此一定不能滥用。不过,如果你能善用的话,它就能发挥出极大的作用。

要做出浮动式广告的效果并不困难,如果你有JS基础的可以自己写一个,如果连写都懒得写的话,到网上下载一个特效工具,按提示粘贴一下代码就OK。不过,想要真正了解它是怎样做出来的,则需要掌握一些JS知识了。这里向大家介绍一下简单的浮动广告做法。

以下这段代码可放在<body></body>之间,其间我加入了一些注释(即“//”后的文字及“<!—”“-->”之间的文字)。

<SCRIPT FOR=window EVENT=onload LANGUAGE="JScript">

 initAd();//载入页面后,调用函数initAd()

 </SCRIPT>

 <script language="JScript">

 <!--

 function initAd() {

 document.all.AdLayer.style.posTop = -200;//设置onLoad事件激发以后,广告层相对于固定后的y方向位置

 document.all.AdLayer.style.visibility = visible//设置层为可见

 MoveLayer(AdLayer);//调用函数MoveLayer()

 }

 function MoveLayer(layerName) {

 var x = 600;//浮动广告层固定于浏览器的x方向位置

 var y = 300;//浮动广告层固定于浏览器的y方向位置

 var diff = (document.body.scrollTop + y - document.all.AdLayer.style.posTop)*.40;

 var y = document.body.scrollTop + y - diff;

 eval("document.all." + layerName + ".style.posTop = y");

 eval("document.all." + layerName + ".style.posLeft = x");//移动广告层

 setTimeout("MoveLayer(AdLayer);", 20);//设置20毫秒后再调用函数MoveLayer()

 }

 //-->

 </script>

 <!--下面为一个ID为AdLayer的层(如ID名不为AdLayer,上面MoveLayer()内的AdLayer也要作相应修改),包括一张带链接的图片-->

 <div id=AdLayer style=position:absolute; width:61px; height:59px; z-index:20; visibility:hidden;; left: 600px; top: 300px> 

 <a href="https://3water.com"><img src=../qqkk2000.gif border="0" height="60" width="60"></a> 

 </div>

在这里,你可以设置x、y的值来设定所固定层的位置,改变setTimeout("MoveLayer(AdLayer);", 20)中20的值为你希望调用MoveLayer()的时间间隔。还有要注意的是,使用的图片最好为透明背景的gif图,以使图片的背景颜色不至于遮住后面的的内容。

切记,要慎用浮动式广告,考虑使用特效的同时,千万要考虑到浏览者的感觉,不能滥用哦!

Javascript 相关文章推荐
Dom加载让图片加载完再执行的脚本代码
May 15 Javascript
菜鸟javascript基础资料整理3 正则
Dec 06 Javascript
javascript 面向对象封装与继承
Nov 27 Javascript
JS动态改变表格边框宽度的方法
Mar 31 Javascript
JavaScript实现数字数组按照倒序排列的方法
Apr 06 Javascript
Sequelize中用group by进行分组聚合查询
Dec 12 Javascript
JavaScript的六种继承方式(推荐)
Jun 26 Javascript
layui异步加载table表中某一列数据的例子
Sep 16 Javascript
js基础之事件捕获与冒泡原理
Oct 09 Javascript
vue中get请求如何传递数组参数的方法示例
Nov 08 Javascript
微信小程序实现弹框效果
May 26 Javascript
vue实现分页的三种效果
Jun 23 Javascript
setTimeout函数兼容各主流浏览器运行执行效果实例
Jun 13 #Javascript
JQuery 操作/获取table具体代码
Jun 13 #Javascript
js获取dom的高度和宽度(可见区域及部分等等)
Jun 13 #Javascript
如何使Chrome控制台支持多行js模式——意外发现
Jun 13 #Javascript
jQuery插件的写法分享
Jun 12 #Javascript
jQuery 淡出一个图像到另一个图像的实现代码
Jun 12 #Javascript
单击浏览器右上角的X关闭窗口弹出提示的小例子
Jun 12 #Javascript
You might like
PHP学习之输出字符串(echo,print,printf,print_r和var_dump)
2011/04/17 PHP
Symfony2学习笔记之模板用法详解
2016/03/17 PHP
Zend Framework教程之Zend_Helpers动作助手ViewRenderer用法详解
2016/07/20 PHP
Javascript Object.extend
2010/05/18 Javascript
js局部刷新页面时间具体实现
2013/07/04 Javascript
利用jquery动画特效和css打造的侧边弹出垂直导航
2014/04/04 Javascript
浅析JQuery中的html(),text(),val()区别
2014/09/01 Javascript
基于javascript实现漂亮的页面过渡动画效果附源码下载
2015/10/26 Javascript
浅谈JS封闭函数、闭包、内置对象
2017/07/18 Javascript
three.js实现3D模型展示的示例代码
2017/12/31 Javascript
Angular4学习之Angular CLI的安装与使用教程
2018/01/04 Javascript
Vue实现导出excel表格功能
2018/03/30 Javascript
jquery判断滚动条距离顶部的距离方法
2018/09/05 jQuery
如何在Vue中使用CleaveJS格式化你的输入内容
2018/12/14 Javascript
JS/jQuery实现超简单的Table表格添加,删除行功能示例
2019/07/31 jQuery
js 计算月/周的第一天和最后一天代码
2020/02/01 Javascript
解决vue刷新页面以后丢失store的数据问题
2020/08/11 Javascript
JavaScript实现音乐导航效果
2020/11/19 Javascript
通过vue.extend实现消息提示弹框的方法记录
2021/01/07 Vue.js
Python struct.unpack
2008/09/06 Python
SVM基本概念及Python实现代码
2017/12/27 Python
Python使用functools实现注解同步方法
2018/02/06 Python
解决python 输出是省略号的问题
2018/04/19 Python
django2+uwsgi+nginx上线部署到服务器Ubuntu16.04
2018/06/26 Python
python批量处理文件或文件夹
2020/07/28 Python
详解pyinstaller selenium python3 chrome打包问题
2019/10/18 Python
使用 Supervisor 监控 Python3 进程方式
2019/12/05 Python
keras实现多GPU或指定GPU的使用介绍
2020/06/17 Python
python使用多线程查询数据库的实现示例
2020/08/17 Python
Css3新特性应用之视觉效果实例
2016/12/12 HTML / CSS
就业表自我评价分享
2014/02/06 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
孕妇离婚协议书范本
2014/11/20 职场文书
企业管理制度设计时要注意的几种“常见病”!
2019/04/19 职场文书
浅谈golang 中time.After释放的问题
2021/05/05 Golang
利用uni-app生成微信小程序的踩坑记录
2022/04/05 Javascript