home *** CD-ROM | disk | FTP | other *** search
/ Desktop Icons 2000 / Icons2000.iso / Help / products / jsexternal / foldernav.js < prev    next >
Text File  |  1999-12-05  |  4KB  |  148 lines

  1. document.onmouseover = mOver ;
  2. document.onmouseout = mOut ;
  3.  
  4. function mOver() {
  5.     var eSrc = window.event.srcElement ;
  6.     if (eSrc.className == "item") {
  7.         window.event.srcElement.className = "highlight";
  8.     }
  9. }
  10.  
  11. function mOut() {
  12.     var eSrc = window.event.srcElement ;
  13.     if (eSrc.className == "highlight") {
  14.         window.event.srcElement.className = "item";
  15.     }
  16. }
  17.  
  18.  
  19. var bV=parseInt(navigator.appVersion);
  20. NS4=(document.layers) ? true : false;
  21. IE4=((document.all)&&(bV>=4))?true:false;
  22. ver4 = (NS4 || IE4) ? true : false;
  23.  
  24. isExpanded = false;
  25.  
  26. function getIndex($1) {
  27.     ind = null;
  28.     for (i=0; i<document.layers.length; i++) {
  29.         whichEl = document.layers[i];
  30.         if (whichEl.id == $1) {
  31.             ind = i;
  32.             break;
  33.         }
  34.     }
  35.     return ind;
  36. }
  37.  
  38. function arrange() {
  39.     nextY = document.layers[firstInd].pageY + document.layers[firstInd].document.height;
  40.     for (i=firstInd+1; i<document.layers.length; i++) {
  41.         whichEl = document.layers[i];
  42.         if (whichEl.visibility != "hide") {
  43.             whichEl.pageY = nextY;
  44.             nextY += whichEl.document.height;
  45.         }
  46.     }
  47. }
  48.  
  49. function FolderInit(){
  50.     if (NS4) {
  51.     firstEl = "mParent";
  52.     firstInd = getIndex(firstEl);
  53.     showAll();
  54.         for (i=0; i<document.layers.length; i++) {
  55.             whichEl = document.layers[i];
  56.             if (whichEl.id.indexOf("Child") != -1) whichEl.visibility = "hide";
  57.         }
  58.         arrange();
  59.     }
  60.     else {
  61.         tempColl = document.all.tags("DIV");
  62.         for (i=0; i<tempColl.length; i++) {
  63.             if (tempColl(i).className == "child") tempColl(i).style.display = "block";
  64.         }
  65.     }
  66. }
  67.  
  68. function FolderExpand($1,$2) {
  69.     if (!ver4) return;
  70.     if (IE4) { ExpandIE($1,$2) } 
  71.     else { ExpandNS($1,$2) }
  72. }
  73.  
  74. function ExpandIE($1,$2) {
  75.     Expanda = eval($1 + "a");
  76.     Expanda.blur()
  77.     ExpandChild = eval($1 + "Child");
  78.         if ($2 != "top") { 
  79.         ExpandTree = eval($1 + "Tree");
  80.         ExpandFolder = eval($1 + "Folder");
  81.     }
  82.     if (ExpandChild.style.display == "none") {
  83.         ExpandChild.style.display = "block";
  84.                 if ($2 != "top") { 
  85.                     if ($2 == "last") { ExpandTree.src = "/images/minus.gif"; }
  86.             else { ExpandTree.src = "/images/minus.gif"; }
  87.             ExpandFolder.src = "/images/spacerdropmenu.gif";    
  88.         }
  89.         else { mTree.src = "/images/topopen.gif"; }
  90.     }
  91.     else {
  92.         ExpandChild.style.display = "none";
  93.                 if ($2 != "top") { 
  94.                     if ($2 == "last") { ExpandTree.src = "/images/plus.gif"; }
  95.             else { ExpandTree.src = "/images/plus.gif"; }
  96.             ExpandFolder.src = "/images/spacerdropmenu.gif";
  97.         }
  98.         else { mTree.src = "/images/topopen.gif"; }
  99.     }
  100. }
  101. function ExpandNS($1,$2) {
  102.     ExpandChild = eval("document." + $1 + "Child")
  103.         if ($2 != "top") { 
  104.         ExpandTree = eval("document." + $1 + "Parent.document." + $1 + "Tree")
  105.         ExpandFolder = eval("document." + $1 + "Parent.document." + $1 + "Folder")
  106.     }    
  107.     if (ExpandChild.visibility == "hide") {
  108.         ExpandChild.visibility = "show";
  109.                 if ($2 != "top") { 
  110.                        if ($2 == "last") { ExpandTree.src = "/images/minus.gif"; }
  111.             else { ExpandTree.src = "/images/minus.gif"; }
  112.             ExpandFolder.src = "/images/spacerdropmenu.gif";    
  113.         }
  114.         else { mTree.src = "images/topopen.gif"; }
  115.     }
  116.     else {
  117.         ExpandChild.visibility = "hide";
  118.                 if ($2 != "top") { 
  119.                        if ($2 == "last") { ExpandTree.src = "/images/plus.gif"; }
  120.             else { ExpandTree.src = "/images/plus.gif"; }
  121.             ExpandFolder.src = "/images/spacerdropmenu.gif";    
  122.         }
  123.         else { mTree.src = "/images/top.gif"; }
  124.     }
  125.     arrange();
  126. }
  127.  
  128. function showAll() {
  129.     for (i=firstInd; i<document.layers.length; i++) {
  130.         whichEl = document.layers[i];
  131.         whichEl.visibility = "show";
  132.     }
  133. }
  134.  
  135.  
  136. with (document) {
  137.     write("<STYLE TYPE='text/css'>");
  138.      {
  139.         write(".parent { font:10px; Verdana, Arial, Helvetica, sans-serif; text-decoration:none; color: red }");
  140.         write(".child { color: black; font: 10px; Arial, Helvetica, sans-serif; display:none }");
  141.             write(".item { color: black; text-decoration:none; cursor: hand }");
  142.             write(".highlight { color: blue; text-decoration:none }");
  143.             write(".icon { margin-right: 2 }")
  144.     }
  145.     write("</STYLE>");
  146. }
  147.  
  148. onload = FolderInit;