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


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 相关文章推荐
文件上传类
Oct 09 PHP
PHP 采集程序 常用函数
Dec 18 PHP
Discuz 6.0+ 批量注册用户名
Sep 13 PHP
PHP字符串处理的10个简单方法
Jun 30 PHP
xml在joomla表单中的应用详解分享
Jul 19 PHP
用php来改写404错误页让你的页面更友好
Jan 24 PHP
CURL的学习和应用(附多线程实现)
Jun 03 PHP
关于初学PHP时的知识积累总结
Jun 07 PHP
百度实时推送api接口应用示例
Oct 21 PHP
php批量删除cookie的简单实现方法
Jan 26 PHP
Thinkphp和onethink实现微信支付插件
Apr 13 PHP
在PHP中输出JS语句以及乱码问题的解决方案
Feb 13 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
咖啡磨器 如何选购一台适合家用的意式磨豆机
2021/03/05 新手入门
php pack与unpack 摸板字符字符含义
2009/10/29 PHP
PHP分页效率终结版(推荐)
2013/07/01 PHP
PHP中加密解密函数与DES加密解密实例
2014/10/17 PHP
使用javascript访问XML数据的实例
2006/12/27 Javascript
jQuery插件 selectToSelect使用方法
2013/10/02 Javascript
jQuery应用之jQuery链用法实例
2015/01/19 Javascript
JavaScript实现简单的tab选项卡切换
2016/01/05 Javascript
jQuery Ajax和getJSON获取后台普通json数据和层级json数据用法分析
2016/06/08 Javascript
原生js更改css样式的两种方式
2017/03/15 Javascript
Vue 项目部署到服务器的问题解决方法
2017/12/05 Javascript
vue2.0 datepicker使用方法
2018/02/04 Javascript
Vue使用枚举类型实现HTML下拉框步骤详解
2018/02/05 Javascript
使用Vue的slot插槽分发父组件内容实现高度复用、更加灵活的组件(推荐)
2018/05/01 Javascript
Vue-cli@3.0 插件系统简析
2018/09/05 Javascript
微信小程序开发之自定义tabBar的实现
2018/09/06 Javascript
微信小程序整合使用富文本编辑器的方法详解
2019/04/25 Javascript
小程序自定义导航栏兼容适配所有机型(附完整案例)
2020/04/26 Javascript
Javascript原型链及instanceof原理详解
2020/05/25 Javascript
解决vue动态路由异步加载import组件,加载不到module的问题
2020/07/26 Javascript
vue监听滚动事件的方法
2020/12/21 Vue.js
python快速排序代码实例
2013/11/21 Python
利用Python脚本生成sitemap.xml的实现方法
2017/01/31 Python
python实现人人自动回复、抢沙发功能
2018/06/08 Python
python实现两个经纬度点之间的距离和方位角的方法
2019/07/05 Python
python3使用print打印带颜色的字符串代码实例
2019/08/22 Python
Python-numpy实现灰度图像的分块和合并方式
2020/01/09 Python
HTML5 Canvas基本线条绘制的实例教程
2016/03/17 HTML / CSS
丝芙兰新加坡官网:Sephora新加坡
2018/12/04 全球购物
SQL面试题
2013/12/09 面试题
户外拓展活动方案
2014/02/11 职场文书
硕士研究生就业推荐信
2014/05/18 职场文书
汽车服务工程专业自荐信
2014/09/02 职场文书
出纳岗位职责
2015/01/31 职场文书
心理健康教育培训研修感言
2015/11/18 职场文书
Html5调用企业微信的实现
2021/04/16 HTML / CSS