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


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 相关文章推荐
PHP输出控制功能在简繁体转换中的应用
Oct 09 PHP
利用Ffmpeg获得flv视频缩略图和视频时间的代码
Sep 15 PHP
php Xdebug的安装与使用详解
Jun 20 PHP
php中{}大括号是什么意思
Dec 01 PHP
php检测iis环境是否支持htaccess的方法
Feb 18 PHP
CentOS 6.3下安装PHP xcache扩展模块笔记
Sep 10 PHP
php使用simplexml_load_file加载XML文件并显示XML的方法
Mar 19 PHP
php实现阳历阴历互转的方法
Oct 28 PHP
Django中通过定时任务触发页面静态化的处理方式
Aug 29 PHP
thinkphp集成前端脚手架Vue-cli的教程图解
Aug 30 PHP
thinkphp5引入公共部分header、footer的方法详解
Sep 14 PHP
使用Laravel中的查询构造器实现增删改查功能
Sep 03 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
Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
2011/04/18 PHP
php学习笔记之 函数声明(二)
2011/06/09 PHP
php链表用法实例分析
2015/07/09 PHP
PHP实现的支付宝支付功能示例
2019/03/26 PHP
javascript 二分法(数组array)
2010/04/24 Javascript
open 动态修改img的onclick事件示例代码
2013/11/13 Javascript
JavaScript字符串对象charAt方法入门实例(用于取得指定位置的字符)
2014/10/17 Javascript
node.js+Ajax实现获取HTTP服务器返回数据
2014/11/26 Javascript
直接拿来用的15个jQuery代码片段
2015/09/23 Javascript
AngularJS实现textarea记录只能输入规定数量的字符并显示
2016/04/26 Javascript
jQuery实现简单倒计时功能的方法
2016/07/04 Javascript
BootStrap Datepicker 插件修改为默认中文的实现方法
2017/02/10 Javascript
基于DOM节点删除之empty和remove的区别(详解)
2017/09/11 Javascript
vue组件父与子通信详解(一)
2017/11/07 Javascript
JSON数据中存在单个转义字符“\”的处理方法
2018/07/11 Javascript
JS浏览器BOM常见操作实例详解
2020/04/27 Javascript
[03:46]DAC趣味视频-中文考试.mp4
2017/04/02 DOTA
Python help()函数用法详解
2014/03/11 Python
Python生成随机密码
2015/03/10 Python
python基于itchat实现微信群消息同步机器人
2017/02/27 Python
Python实现统计给定列表中指定数字出现次数的方法
2018/04/11 Python
Python解决两个整数相除只得到整数部分的实例
2018/11/10 Python
使用python爬取微博数据打造一颗“心”
2019/06/28 Python
任意存:BOXFUL
2018/05/21 全球购物
企划主管岗位职责
2013/12/12 职场文书
酒店执行总经理岗位职责
2013/12/15 职场文书
汽车专业求职信
2014/06/05 职场文书
药店采购员岗位职责
2014/09/30 职场文书
党委书记群众路线对照检查材料思想汇报
2014/10/04 职场文书
2014年团工作总结
2014/11/27 职场文书
劳资员岗位职责
2015/02/13 职场文书
社会实践活动总结格式
2015/05/11 职场文书
单位证明范文
2015/06/18 职场文书
2019年关于小学生课外阅读情况的分析报告
2019/12/02 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
Python学习之os包使用教程详解
2022/03/21 Python