兼容各大浏览器带关闭按钮的漂浮多组图片广告代码


Posted in PHP onJune 05, 2014

JS部分: 

<script type="text/javascript" language="javascript"> 
function addEvent(obj, evtType, func, cap) { 
cap = cap || false; 
if (obj.addEventListener) { 
obj.addEventListener(evtType, func, cap); 
return true; 
} else if (obj.attachEvent) { 
if (cap) { 
obj.setCapture(); 
return true; 
} else { 
return obj.attachEvent("on" + evtType, func); 
} 
} else { 
return false; 
} 
} 
function getPageScroll() { 
var xScroll, yScroll; 
if (self.pageXOffset) { 
xScroll = self.pageXOffset; 
} else if (document.documentElement && document.documentElement.scrollLeft) { 
xScroll = document.documentElement.scrollLeft; 
} else if (document.body) { 
xScroll = document.body.scrollLeft; 
} 
if (self.pageYOffset) { 
yScroll = self.pageYOffset; 
} else if (document.documentElement && document.documentElement.scrollTop) { 
yScroll = document.documentElement.scrollTop; 
} else if (document.body) { 
yScroll = document.body.scrollTop; 
} 
arrayPageScroll = new Array(xScroll, yScroll); 
return arrayPageScroll; 
} 
function GetPageSize() { 
var xScroll, yScroll; 
if (window.innerHeight && window.scrollMaxY) { 
xScroll = document.body.scrollWidth; 
yScroll = window.innerHeight + window.scrollMaxY; 
} else if (document.body.scrollHeight > document.body.offsetHeight) { 
xScroll = document.body.scrollWidth; 
yScroll = document.body.scrollHeight; 
} else { 
xScroll = document.body.offsetWidth; 
yScroll = document.body.offsetHeight; 
} 
var windowWidth, windowHeight; 
if (self.innerHeight) { 
windowWidth = self.innerWidth; 
windowHeight = self.innerHeight; 
} else if (document.documentElement && document.documentElement.clientHeight) { 
windowWidth = document.documentElement.clientWidth; 
windowHeight = document.documentElement.clientHeight; 
} else if (document.body) { 
windowWidth = document.body.clientWidth; 
windowHeight = document.body.clientHeight; 
} 
if (yScroll < windowHeight) { 
pageHeight = windowHeight; 
} else { 
pageHeight = yScroll; 
} 
if (xScroll < windowWidth) { 
pageWidth = windowWidth; 
} else { 
pageWidth = xScroll; 
} 
arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight) 
return arrayPageSize; 
} 
var AdMoveConfig = new Object(); 
AdMoveConfig.IsInitialized = false; 
AdMoveConfig.ScrollX = 0; 
AdMoveConfig.ScrollY = 0; 
AdMoveConfig.MoveWidth = 0; 
AdMoveConfig.MoveHeight = 0; 
AdMoveConfig.Resize = function () { 
var winsize = GetPageSize(); 
AdMoveConfig.MoveWidth = winsize[2]; 
AdMoveConfig.MoveHeight = winsize[3]; 
AdMoveConfig.Scroll(); 
} 
AdMoveConfig.Scroll = function () { 
var winscroll = getPageScroll(); 
AdMoveConfig.ScrollX = winscroll[0]; 
AdMoveConfig.ScrollY = winscroll[1]; 
} 
addEvent(window, "resize", AdMoveConfig.Resize); 
addEvent(window, "scroll", AdMoveConfig.Scroll); 
function AdMove(id) { 
if (!AdMoveConfig.IsInitialized) { 
AdMoveConfig.Resize(); 
AdMoveConfig.IsInitialized = true; 
} 
var obj = document.getElementById(id); 
obj.style.position = "absolute"; 
var W = AdMoveConfig.MoveWidth - obj.offsetWidth; 
var H = AdMoveConfig.MoveHeight - obj.offsetHeight; 
var x = W * Math.random(), y = H * Math.random(); 
var rad = (Math.random() + 1) * Math.PI / 6; 
var kx = Math.sin(rad), ky = Math.cos(rad); 
var dirx = (Math.random() < 0.5 ? 1 : -1), diry = (Math.random() < 0.5 ? 1 : -1); 
var step = 1; 
var interval; 
this.SetLocation = function (vx, vy) { x = vx; y = vy; } 
this.SetDirection = function (vx, vy) { dirx = vx; diry = vy; } 
obj.CustomMethod = function () { 
obj.style.left = (x + AdMoveConfig.ScrollX) + "px"; 
obj.style.top = (y + AdMoveConfig.ScrollY) + "px"; 
rad = (Math.random() + 1) * Math.PI / 6; 
W = AdMoveConfig.MoveWidth - obj.offsetWidth; 
H = AdMoveConfig.MoveHeight - obj.offsetHeight; 
x = x + step * kx * dirx; 
if (x < 0) { dirx = 1; x = 0; kx = Math.sin(rad); ky = Math.cos(rad); } 
if (x > W) { dirx = -1; x = W; kx = Math.sin(rad); ky = Math.cos(rad); } 
y = y + step * ky * diry; 
if (y < 0) { diry = 1; y = 0; kx = Math.sin(rad); ky = Math.cos(rad); } 
if (y > H) { diry = -1; y = H; kx = Math.sin(rad); ky = Math.cos(rad); } 
} 
this.Run = function () { 
var delay = 10; 
interval = setInterval(obj.CustomMethod, delay); 
obj.onmouseover = function () { clearInterval(interval); } 
obj.onmouseout = function () { interval = setInterval(obj.CustomMethod, delay); } 
} 
} 
</script>
<script type="text/javascript" language="javascript"> 
    var ad2 = new AdMove("ad2");
    ad2.Run();
    //多组漂浮
</script>

html部分:

<DIV id=ad2 style="Z-INDEX: 5;position:relative"><a href='PoliceHTk.aspx' target='_blank'><IMG src="images/fudong/fudong.jpg" width="230" height="150" border="0" > </a><br> <a href="#" onclick="document.getElementById('ad2').style.display='none'">                   <img border=0 src=images/fudong/close1.gif /></a> 
</DIV>
PHP 相关文章推荐
使用MaxMind 根据IP地址对访问者定位
Oct 09 PHP
PHP 高级课程笔记 面向对象
Jun 21 PHP
php下通过伪造http头破解防盗链的代码
Jul 03 PHP
使用cookie实现统计访问者登陆次数
Jun 08 PHP
PHP生成RSS文件类实例
Dec 05 PHP
Smarty foreach控制循环次数的一些方法
Jul 01 PHP
PHP实现仿百度文库,豆丁在线文档效果(word,excel,ppt转flash)
Mar 10 PHP
PHP读书笔记整理_结构语句详解
Jul 01 PHP
Yii使用smsto短信接口的函数demo示例
Jul 13 PHP
PHP连接sftp并下载文件的方法教程
Aug 26 PHP
php操作mongodb封装类与用法实例
Sep 01 PHP
PHP7 list() 函数修改
Mar 09 PHP
PHP实现使用优酷土豆视频地址获取swf播放器分享地址
Jun 05 #PHP
一组PHP加密解密函数分享
Jun 05 #PHP
php导出csv格式数据并将数字转换成文本的思路以及代码分享
Jun 05 #PHP
php 购物车完整实现代码
Jun 05 #PHP
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
Jun 04 #PHP
浅谈PHP调用Webservice思路及源码分享
Jun 04 #PHP
利用谷歌 Translate API制作自己的翻译脚本
Jun 04 #PHP
You might like
php 代码优化的42条建议 推荐
2009/09/25 PHP
ThinkPHP惯例配置文件详解
2014/07/14 PHP
基于thinkPHP框架实现留言板的方法
2016/10/17 PHP
Yii2实现log输出到file及database的方法
2016/11/12 PHP
CodeIgniter开发实现支付宝接口调用的方法示例
2016/11/14 PHP
window.addeventjs事件驱动函数集合addEvent等
2008/02/19 Javascript
jQuery asp.net 用json格式返回自定义对象
2010/04/07 Javascript
基于mootools插件实现遮罩层新手引导
2012/05/24 Javascript
Javascript倒计时页面跳转实例小结
2013/09/11 Javascript
js实现特定位取反原理及示例
2014/06/30 Javascript
jQuery中add()方法用法实例
2015/01/08 Javascript
jQuery移动页面开发中的触摸事件与虚拟鼠标事件简介
2015/12/03 Javascript
详解JavaScript中基于原型prototype的继承特性
2016/05/05 Javascript
基于jQuery实现滚动刷新效果
2017/01/09 Javascript
js如何找出字符串中的最长回文串
2018/06/04 Javascript
小程序最新获取用户昵称和头像的方法总结
2019/09/23 Javascript
vuex存值与取值的实例
2019/11/06 Javascript
[01:06:26]全国守擂赛第二周 Team Coach vs DeMonsTer
2020/04/28 DOTA
[55:26]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第一场 2月23日
2021/03/11 DOTA
python生成器generator用法实例分析
2015/06/04 Python
pip安装Python库时遇到的问题及解决方法
2017/11/23 Python
Python Numpy库安装与基本操作示例
2019/01/08 Python
python实现移位加密和解密
2019/03/22 Python
Python 200行代码实现一个滑动验证码过程详解
2019/07/11 Python
详解tensorflow2.x版本无法调用gpu的一种解决方法
2020/05/25 Python
Pycharm 2020.1 版配置优化的详细教程
2020/08/07 Python
python 牛顿法实现逻辑回归(Logistic Regression)
2020/10/15 Python
python 怎样进行内存管理
2020/11/10 Python
Html5与App的通讯方式详解
2019/10/24 HTML / CSS
中专自荐信
2013/10/13 职场文书
大学毕业生简单自荐信
2013/11/05 职场文书
中医临床专业自我鉴定范文
2014/01/15 职场文书
《在大海中永生》教学反思
2014/02/24 职场文书
企业后勤岗位职责
2014/02/28 职场文书
最经典的商业地产项目广告词
2014/03/13 职场文书
Python机器学习之基于Pytorch实现猫狗分类
2021/06/08 Python