zoukankan      html  css  js  c++  java
  • 浮动广告 相关源码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
        <title>多个漂浮广告代码,兼容IE、Firefox,支持W3C XHTML标准</title>
        <script type="text/javascript" language="javascript">   
    <!--
            //公共脚本文件 main.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;
            }
            //广告脚本文件 AdMove.js   
            /*  
            例子  
            <div id="Div2">  
            ***** content ******  
            </div>  
            var ad=new AdMove("Div2");  
            ad.Run();  
            */
            ////////////////////////////////////////////////////////   
            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 = 25; //移动速度   
                    interval = setInterval(obj.CustomMethod, delay);
                    obj.onmouseover = function() { clearInterval(interval); }
                    obj.onmouseout = function() { interval = setInterval(obj.CustomMethod, delay); }
                }
            }   
    //-->   
        </script>
    </head>
    <body>
        <span id="ad1">
            <a href="http://www.zdxz.cn/">
                <img src="http://www.baidu.com/img/baidu_logo.gif" alt="Baidu Logo" width="270" height="129" border="0" />
            </a>
        </span>
        <span id="ad2">
        <a href="http://www.zdxz.cn/">
            <img src="http://www.google.com/intl/zh-CN/logos/Logo_60wht.gif" alt="Google Logo" width="176" height="77" border="0" />
        </a></span>
        <script type="text/javascript" language="javascript">   
    <!--
            var ad1 = new AdMove("ad1");
            ad1.Run();
            var ad2 = new AdMove("ad2");
            ad2.Run();
            ad2.SetLocation(50, 100)
            ad2.SetDirection(1, 1)   
    //-->
        </script>
    </body>
    </html>
  • 相关阅读:
    3年A班,从现在起大家都是人质-观后感
    深入浅出的Object.defineProperty()
    在Vue中使用插槽(solt)
    非父子组件间的传值
    给组件绑定原生事件
    组件参数校验与非props特性
    Vue父子组件的数据传递
    Vue组件使用中的细节点
    vue中set基本用法
    vue中的列表渲染
  • 原文地址:https://www.cnblogs.com/sdream/p/5691140.html
Copyright © 2011-2022 走看看