home *** CD-ROM | disk | FTP | other *** search
/ Online Today 2000 June / ONLINE_TODAY_06_.ISO / script.js < prev    next >
Encoding:
Text File  |  2000-04-06  |  5.5 KB  |  295 lines

  1.  
  2. var y=10, y=10;
  3. var bw, bh, bannerwidth=468;
  4. var rein="visible";
  5. var offset=10;
  6. var speed=7;
  7. var delay=10;
  8. var zeit = new Date();
  9. var zeit1, zeit2;
  10. var stoptime=6000;
  11. var active=true;
  12. var xreached=false, yreached=false;
  13. var speedvar;
  14. var switched=false;
  15.  
  16. var myHREFend="</a>";
  17.  
  18. var myHREFDHTML="<A HREF=\"JavaScript:OpenWin('aktion.htm','aktion',570,565)\"\">";
  19. var imgTagDHTML ="<IMG SRC=\"images/dhtml.gif\" ALT=\"Hier klicken !\" WIDTH=\"468\" HEIGHT=\"60\" BORDER=\"0\">";
  20.  
  21. var myHREFFallback="<A HREF=\"JavaScript:OpenWin('aktion.htm','aktion',570,545)\"\">";
  22. var imgTagFallback="<IMG SRC=\"images/fallb.gif\" ALT=\"Hier klicken !\" WIDTH=\"468\" HEIGHT=\"60\" BORDER=\"0\">";
  23.  
  24. var imgRein="<IMG SRC=\"images/rein.gif\" ALT=\"Hier klicken !\" WIDTH=\"67\" HEIGHT=\"61\" BORDER=\"0\">";
  25. var imgRaus="<IMG SRC=\"images/raus.gif\" ALT=\"Hier klicken !\" WIDTH=\"67\" HEIGHT=\"61\" BORDER=\"0\">";
  26.  
  27.  
  28. // browser detection ---------------------------------------
  29.     var ns4 = (document.layers)? true:false
  30.     var ie4 = (document.all)? true:false
  31.     
  32.     var version = navigator.appVersion;
  33.     
  34.     if (ns4) 
  35.     {
  36.         layerRef="document.layers";
  37.         styleSwitch="";
  38.         visvar="show";
  39.         bh=48;
  40.     }
  41.     
  42.     if (ie4) 
  43.     {
  44.         layerRef="document.all"; //for ie click-n-drag.js
  45.         styleSwitch=".style"; //for ie click-n-drag.js
  46.         visvar="visible";
  47.         bh=55;
  48.     }
  49.     
  50. // ---------------------------------------------------------
  51.  
  52. // os detection --------------------------------------------
  53.  
  54. var os = "unknown";
  55.  
  56. if (navigator.appVersion.indexOf('Macintosh') != -1) {
  57.     os = "macintosh";
  58. }
  59. if (navigator.appVersion.indexOf('Win') != -1) {
  60.     os = "windows";
  61. }
  62. if (navigator.appVersion.indexOf('Linux') != -1) {
  63.     os = "linux";
  64. }
  65. if (navigator.appVersion.indexOf('Unix') != -1) {
  66.     os = "unix";
  67. }
  68.  
  69. // ---------------------------------------------------------
  70.  
  71. var urX=-100;
  72. var urY=-100;
  73. var posX=-100;
  74. var posY=500;
  75.  
  76. generator();
  77.  
  78. if (ie4)
  79. {
  80.     var layertag1="<DIV ID=\"rein\" STYLE=\"position: absolute; top: "+posY+"px; left "+posX+"px; width: 0px; height: 0px; z-index: 300; visibility: visible;\">"+imgRein+"</div>";
  81.     var layertag2="<DIV ID=\"raus\" STYLE=\"position: absolute; top: "+posY+"px; left "+posX+"px; width: 0px; height: 0px; z-index: 200; visibility: hidden;\">"+imgRaus+"</div>";
  82.  
  83.     if (document.all.myBody && os!="macintosh")
  84.     {
  85.         writeDHTMLBanner();
  86.     }
  87.     else
  88.     {
  89.         writeFallback();
  90.     }
  91. }
  92. else if (ns4)
  93. {
  94.     var layertag1="<layer ID=rein position=absolute top="+posY+" left="+posX+" width=64 height=58 z-index=300 visibility=visible>"+imgRein+"</layer>";
  95.     var layertag2="<layer ID=raus position=absolute top="+posY+" left="+posX+" width=64 height=58 z-index=200 visibility=hidden>"+imgRaus+"</layer>";
  96.     
  97.     writeDHTMLBanner();
  98. }
  99. else        // all other browsers
  100. {
  101.     writeFallback();
  102. }
  103.  
  104. function getX()
  105. {
  106.     if (ie4)
  107.     {
  108.         x=130;
  109.     }
  110.     
  111.     if (ns4)
  112.     {
  113.         x=128;
  114.     }
  115. }
  116.  
  117. function getY()
  118. {
  119.         //y=eval('document.all.'+idname+'.offsetTop+document.all.tabelle.offsetTop');;
  120. }
  121.  
  122. function f()
  123. {
  124.     getX();
  125.     if (active)
  126.     {
  127.         if (rein=="visible")
  128.         {
  129.             if (posX<=(x+offset)-speed/2)
  130.             { 
  131.                 posX+=speed;
  132.             }
  133.             else
  134.             {
  135.                 posX=x+offset;
  136.                 xreached=true;
  137.             }
  138.             
  139.             if ((posY>=bh-speed/2) && (posY<=bh+speed/2))
  140.             {
  141.                 posY=bh;
  142.                 yreached=true;    
  143.             }
  144.             else
  145.             {
  146.                 if (posY<=bh-speed/2)
  147.                 { 
  148.                     posY+=speed;
  149.                 }
  150.                 else
  151.                 {
  152.                     posY-=speed;
  153.                 }
  154.             }
  155.             
  156.             if (xreached && yreached)
  157.             {
  158.                 zeit1=zeit.getTime();
  159.                 active=false;
  160.                 xreached=false; yreached=false;
  161.             }
  162.         }
  163.         else
  164.         {
  165.             if (posX>urX)
  166.             { 
  167.                 posX-=speed;
  168.             }
  169.             else
  170.             {
  171.                 posX=urX;
  172.                 xreached=true;
  173.             }
  174.             
  175.             var dummy = 4; 
  176.             rndnr = Math.random() ;
  177.             var speedvar = Math.round(dummy * rndnr)-2;
  178.             if (escDir==0) 
  179.             {
  180.                 posY-=speed+speedvar;
  181.             }
  182.             else
  183.             {
  184.                 posY+=speed+speedvar;
  185.             }
  186.             
  187.             if (xreached)
  188.             {
  189.                 zeit1=zeit.getTime();
  190.                 active=false;
  191.                 xreached=false; yreached=false;
  192.             }
  193.         }
  194.     }
  195.     else
  196.     {
  197.         zeit = new Date();
  198.         zeit2=zeit.getTime();
  199.         
  200.         if ((zeit2>zeit1+(stoptime-(stoptime/7))) && switched==false)
  201.         {
  202.             mySwitch();
  203.             switched=true;
  204.         }
  205.         
  206.         if (zeit2>zeit1+stoptime)
  207.         {
  208.             switched=false;
  209.             active=true;
  210.         }
  211.     }
  212.     posIt(posX,posY);
  213.     
  214.     //posDebug(x,bh);
  215.     setTimeout("f()", delay);
  216. }
  217.  
  218. function posDebug(myX,myY)
  219. {
  220.     eval(layerRef+'["debug"]'+styleSwitch+'.left=myX');
  221.     eval(layerRef+'["debug"]'+styleSwitch+'.top=myY');
  222. }
  223.  
  224. function posIt(myX,myY)
  225. {
  226.     eval(layerRef+'["rein"]'+styleSwitch+'.left=myX');
  227.     eval(layerRef+'["rein"]'+styleSwitch+'.top=myY');
  228.     eval(layerRef+'["raus"]'+styleSwitch+'.left=myX');
  229.     eval(layerRef+'["raus"]'+styleSwitch+'.top=myY');
  230. }
  231.  
  232. function mySwitch()
  233. {
  234.     if (rein=="visible")
  235.     {
  236.         hideLayer("rein");
  237.         showLayer("raus");
  238.         rein="invisible";
  239.     }
  240.     else
  241.     {
  242.         generator();
  243.         hideLayer("raus");
  244.         showLayer("rein");
  245.         rein="visible";
  246.     }
  247. }
  248.  
  249. function showLayer(layerName) 
  250. {
  251.     eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="visible"');
  252. }
  253.  
  254. function hideLayer(layerName)  
  255. {    
  256.     eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="hidden"');    
  257. }
  258.  
  259. function generator()
  260. {
  261.     var nrimg = 1000; 
  262.     rndnr = Math.random() ;
  263.     posY = Math.round(nrimg * rndnr)-500;
  264.     //alert(posY);
  265.     
  266.     nrimg = 1; 
  267.     rndnr = Math.random() ;
  268.     escDir = Math.round(nrimg * rndnr);
  269.     //alert(escDir);
  270.     
  271.     nrimg = 10; 
  272.     rndnr = Math.random() ;
  273.     speedvar = Math.round(nrimg * rndnr)-5;
  274.     //alert(speedvar);
  275. }
  276.  
  277. function writeDHTMLBanner()
  278. {
  279.     document.write(layertag1);
  280.     document.write(layertag2);
  281.     
  282.     var idname="banner";
  283.     var imgtag=myHREFDHTML+imgTagDHTML+myHREFend;
  284.     
  285.     document.write(imgtag);
  286.  
  287.     hideLayer("raus");
  288.     f();
  289. }
  290.  
  291. function writeFallback()
  292. {
  293.     document.write(myHREFFallback+imgTagFallback+myHREFend);
  294. }
  295.