js控制网站中图片漂浮


  1. <html >  
  2. <head>  
  3.     <title>图片漂浮功能</title>  
  4. <script type="text/javascript">  
  5.     function addEvent(obj, evtType, func, cap) {  
  6.         cap = cap || false;  
  7.         if (obj.addEventListener) {  
  8.             obj.addEventListener(evtType, func, cap);  
  9.             return true;  
  10.         } else if (obj.attachEvent) {  
  11.             if (cap) {  
  12.                 obj.setCapture();  
  13.                 return true;  
  14.             } else {  
  15.                 return obj.attachEvent("on" + evtType, func);  
  16.             }  
  17.         } else {  
  18.             return false;  
  19.         }  
  20.     }  
  21.     function getPageScroll() {  
  22.         var xScroll, yScroll;  
  23.         if (self.pageXOffset) {  
  24.             xScroll = self.pageXOffset;  
  25.         } else if (document.documentElement && document.documentElement.scrollLeft) {  
  26.             xScroll = document.documentElement.scrollLeft;  
  27.         } else if (document.body) {  
  28.             xScroll = document.body.scrollLeft;  
  29.         }  
  30.         if (self.pageYOffset) {  
  31.             yScroll = self.pageYOffset;  
  32.         } else if (document.documentElement && document.documentElement.scrollTop) {  
  33.             yScroll = document.documentElement.scrollTop;  
  34.         } else if (document.body) {  
  35.             yScroll = document.body.scrollTop;  
  36.         }  
  37.         arrayPageScroll = new Array(xScroll, yScroll);  
  38.         return arrayPageScroll;  
  39.     }  
  40.     function GetPageSize() {  
  41.         var xScroll, yScroll;  
  42.         if (window.innerHeight && window.scrollMaxY) {  
  43.             xScroll = document.body.scrollWidth;  
  44.             yScroll = window.innerHeight + window.scrollMaxY;  
  45.         } else if (document.body.scrollHeight > document.body.offsetHeight) {  
  46.             xScroll = document.body.scrollWidth;  
  47.             yScroll = document.body.scrollHeight;  
  48.         } else {  
  49.             xScroll = document.body.offsetWidth;  
  50.             yScroll = document.body.offsetHeight;  
  51.         }  
  52.         var windowWidth, windowHeight;  
  53.         if (self.innerHeight) {  
  54.             windowWidth = self.innerWidth;  
  55.             windowHeight = self.innerHeight;  
  56.         } else if (document.documentElement && document.documentElement.clientHeight) {  
  57.             windowWidth = document.documentElement.clientWidth;  
  58.             windowHeight = document.documentElement.clientHeight;  
  59.         } else if (document.body) {  
  60.             windowWidth = document.body.clientWidth;  
  61.             windowHeight = document.body.clientHeight;  
  62.         }  
  63.         if (yScroll < windowHeight) {  
  64.             pageHeight = windowHeight;  
  65.         } else {  
  66.             pageHeight = yScroll;  
  67.         }  
  68.         if (xScroll < windowWidth) {  
  69.             pageWidth = windowWidth;  
  70.         } else {  
  71.             pageWidth = xScroll;  
  72.         }  
  73.         arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight)  
  74.         return arrayPageSize;  
  75.     }  
  76.   
  77.   
  78.     var AdMoveConfig = new Object();  
  79.     AdMoveConfig.IsInitialized = false;  
  80.     AdMoveConfig.ScrollX = 0;  
  81.     AdMoveConfig.ScrollY = 0;  
  82.     AdMoveConfig.MoveWidth = 0;  
  83.     AdMoveConfig.MoveHeight = 0;  
  84.     AdMoveConfig.Resize = function () {  
  85.         var winsize = GetPageSize();  
  86.         AdMoveConfig.MoveWidth = winsize[2];  
  87.         AdMoveConfig.MoveHeight = winsize[3];  
  88.         AdMoveConfig.Scroll();  
  89.     }  
  90.     AdMoveConfig.Scroll = function () {  
  91.         var winscroll = getPageScroll();  
  92.         AdMoveConfig.ScrollX = winscroll[0];  
  93.         AdMoveConfig.ScrollY = winscroll[1];  
  94.     }  
  95.     addEvent(window, "resize", AdMoveConfig.Resize);  
  96.     addEvent(window, "scroll", AdMoveConfig.Scroll);  
  97.     function AdMove(id) {  
  98.         if (!AdMoveConfig.IsInitialized) {  
  99.             AdMoveConfig.Resize();  
  100.             AdMoveConfig.IsInitialized = true;  
  101.         }  
  102.         var obj = document.getElementById(id);  
  103.         obj.style.position = "absolute";  
  104.         var W = AdMoveConfig.MoveWidth - obj.offsetWidth;  
  105.         var H = AdMoveConfig.MoveHeight - obj.offsetHeight;  
  106.         var x = W * Math.random(), y = H * Math.random();  
  107.         var rad = (Math.random() + 1) * Math.PI / 6;  
  108.         var kx = Math.sin(rad), ky = Math.cos(rad);  
  109.         var dirx = (Math.random() < 0.5 ? 1 : -1), diry = (Math.random() < 0.5 ? 1 : -1);  
  110.         var step = 1;  
  111.         var interval;  
  112.         this.SetLocation = function (vx, vy) { x = vx; y = vy; }  
  113.         this.SetDirection = function (vx, vy) { dirx = vx; diry = vy; }  
  114.         obj.CustomMethod = function () {  
  115.             obj.style.left = (x + AdMoveConfig.ScrollX) + "px";  
  116.             obj.style.top = (y + AdMoveConfig.ScrollY) + "px";  
  117.             rad = (Math.random() + 1) * Math.PI / 6;  
  118.             W = AdMoveConfig.MoveWidth - obj.offsetWidth;  
  119.             H = AdMoveConfig.MoveHeight - obj.offsetHeight;  
  120.             x = x + step * kx * dirx;  
  121.             if (x < 0) { dirx = 1; x = 0; kx = Math.sin(rad); ky = Math.cos(rad); }  
  122.             if (x > W) { dirx = -1; x = W; kx = Math.sin(rad); ky = Math.cos(rad); }  
  123.             y = y + step * ky * diry;  
  124.             if (y < 0) { diry = 1; y = 0; kx = Math.sin(rad); ky = Math.cos(rad); }  
  125.             if (y > H) { diry = -1; y = H; kx = Math.sin(rad); ky = Math.cos(rad); }  
  126.         }  
  127.         this.Run = function () {  
  128.             var delay = 20;  
  129.             interval = setInterval(obj.CustomMethod, delay);  
  130.             obj.onmouseover = function () { clearInterval(interval); }  
  131.             obj.onmouseout = function () { interval = setInterval(obj.CustomMethod, delay); }  
  132.         }  
  133.     }  
  134.     </script>  
  135.     <div id="ad1" style="z-index: 5;border:1; border-style:dotted;">  
  136.         <!--首页漂浮:开始-->  
  137.         <a id="divclose"  οnclick="setUnVisible();" style=" position:absolute;left:5px;top:5px; cursor:pointer;" title="关闭">[ 关闭 ]</a>  
  138.         <img id="adImg" src="http://www.baidu.com/img/bdlogo.gif" alt="" οnlοad="return imgzoom(this,600);"  
  139.             style="cursor: pointer;" />  
  140.         <!--首页漂浮:结束-->  
  141.     </div>  
  142.   
  143.   
  144.     <script type="text/javascript"><!--  
  145.         var ad1 = new AdMove("ad1");  
  146.         ad1.Run();  
  147.         //可兼容多组漂浮  
  148.         //var ad1=new AdMove("ad2");  
  149.         //ad2.Run();  
  150.         //-->  
  151.         function setUnVisible() {  
  152.             document.getElementById("ad1").style.display = "none";  
  153.         }  
  154.     </script>  
  155. </head>  
  156. <body>  
  157. </body>  
  158. </html>  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值