兼容ie的飘窗

原创 2018年03月15日 10:01:13

首先html页面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script type="text/javascript" src="float.js"></script>
</head>
<body style="height:1000px">
<!--漂浮开始-->
<div id=ad1 style="Z-INDEX: 5">
    <a href="#" target=_blank><img src="1.gif"></a>
</div>
<!--漂浮结束-->
<script type=text/javascript>
    var ad1=new AdMove("ad1");
    ad1.Run();
</script>
</body>
</html>

引入float.js

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);}

}

}

网页飘窗,兼容当前所有浏览器

  • 2017年11月13日 18:52
  • 41KB
  • 下载

兼容ie的飘窗

首先html页面 &amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html lang=&quot;en&quot;&amp;gt; &amp;lt;head&amp;...
  • ywj5200
  • ywj5200
  • 2018-03-15 10:01:13
  • 14

ie下图片多的页面一直在加载的问题

我们通常习惯于把图片一张一张的抠出来,这样在其他主流高版本的浏览器里是没有问题的,但是在ie 里会提示一直在下载图片,要解决页面图片较多并且想一次性加载可以用background-position定位...
  • ywj5200
  • ywj5200
  • 2016-11-14 10:56:22
  • 175

Javascript插件--飘窗

由于客户有这么一个需要再网页中嵌套一个飘窗,然后点击的时候可以链接到指定网站的这么一个需求,其实网上有很多类似的插件,js、jquery都能找到很多,后来想了一下,还是决定自己写一个,熟悉一下,其实写...
  • wzgdjm
  • wzgdjm
  • 2016-04-06 08:31:31
  • 1758

eWebEditor v8.0 完全版(完美支持<em>IE</em>7/8/9/firefox)

网页<em>飘窗</em>,<em>兼容</em>当前所有浏览器 立即下载 上传者: tianskyrain 时间: 2017-11-13 综合评分: 0 积分/C币:3 eWebEditor 3.8 for php 已经完美解决<em>IE</em>(7\\8\\...
  • 2018年04月08日 00:00

解决ie下部支持background-size:100%;属性的方法

方法一:事情有很多解决办法,这种不可以就换另一种 图片放在页面里   例如: 1.设置整个页面背景图 html:         css: #bj{ position:abs...
  • ywj5200
  • ywj5200
  • 2016-11-14 14:58:33
  • 1743

js飘窗效果

New Document                   var dirX =1,dirY =1;var posX =0,posY =0;doc...
  • zhangliao613
  • zhangliao613
  • 2014-08-06 15:05:15
  • 7953

网页两侧滚动窗 网页两侧飘窗的简单实用js

网页两侧滚动窗 网页两侧飘窗的简单实用js           之前头疼这个js怎么写,后来搞了这个,超级实用,只要把下面的代码放在需要设置的网页中就ok了,还方便维护,可以设置关闭...
  • soconglin
  • soconglin
  • 2011-03-02 09:36:00
  • 10009

获得页面url的某个url参数的方法

//获取地址栏参数name为参数名     function GetQueryString(name)     {          var reg = new RegExp("(^|&)"+ ...
  • ywj5200
  • ywj5200
  • 2016-11-22 09:28:14
  • 109

ie下关于a标签超出部分省略的省略号颜色问题

最近做项目发现一个怪现象,就是在ie下,如果a便签里含有设定字体颜色的标签,a标签超出部分省略后的省略号颜色也是该颜色。 &amp;lt;a href=&quot;#&quot; target=...
  • ywj5200
  • ywj5200
  • 2018-03-12 11:42:31
  • 27
收藏助手
不良信息举报
您举报文章:兼容ie的飘窗
举报原因:
原因补充:

(最多只允许输入30个字)