home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 February / OpenLinux 2.3 CD.iso / col / doc / html / gsg / navbar.js < prev    next >
Encoding:
JavaScript  |  1999-08-10  |  7.2 KB  |  273 lines

  1. //-------------------------------------------------------------------------------
  2.  
  3. // global variables.
  4. var gCurrPage;
  5. var gFirstPage;
  6. var gLastPage;
  7. var gsFName;
  8. var gsExtName;
  9.  
  10. var gbContents;
  11.  
  12. var gsTitle = "";
  13. var gsLink = "";
  14. var gsTarget = "";
  15.  
  16. var gNextImg = new Array;
  17. var gFfwdImg = new Array;
  18. var gRewImg = new Array;
  19. var gPrevImg = new Array;
  20. var gHstFwdImg = new Array;
  21. var gHstBwdImg = new Array;
  22.  
  23. var gSepImg = new Image;
  24.  
  25. gNextImg[0] = new Image;
  26. gNextImg[1] = new Image;
  27. gFfwdImg[0] = new Image;
  28. gFfwdImg[1] = new Image;
  29. gRewImg[0] = new Image;
  30. gRewImg[1] = new Image;
  31. gPrevImg[0] = new Image;
  32. gPrevImg[1] = new Image;
  33. gHstFwdImg[0] = new Image;
  34. gHstFwdImg[1] = new Image;
  35. gHstBwdImg[0] = new Image;
  36. gHstBwdImg[1] = new Image;
  37.  
  38. var gnHstList = new Array;
  39. var gnCurrHstPos;
  40.  
  41. //-------------------------------------------------------------------------------
  42.  
  43. function updateBar(pageNum)
  44. {
  45.    var rewPrevIcon = 0;
  46.    var ffwdNextIcon = 0;
  47.    var hstFwdIcon = 0;
  48.    var hstBwdIcon = 0;
  49.  
  50.    if(gFirstPage != gLastPage)
  51.    {
  52.       if(pageNum == gFirstPage)
  53.          ffwdNextIcon = 1;
  54.       else if(pageNum == gLastPage)
  55.          rewPrevIcon = 1;
  56.       else if(pageNum > gFirstPage || pageNum < gLastPage)
  57.       {
  58.          rewPrevIcon = 1;
  59.          ffwdNextIcon = 1;
  60.       }
  61.    }
  62.  
  63.    document.next.src = gNextImg[ffwdNextIcon].src;
  64.    document.ffwd.src = gFfwdImg[ffwdNextIcon].src;
  65.    document.rew.src = gRewImg[rewPrevIcon].src;
  66.    document.prev.src = gPrevImg[rewPrevIcon].src;
  67.  
  68.    if(gnCurrHstPos > 0)
  69.       hstBwdIcon = 1;
  70.    if(gnHstList[gnCurrHstPos + 1] > 0)
  71.       hstFwdIcon = 1;
  72.  
  73.    document.hstfwd.src = gHstFwdImg[hstFwdIcon].src;
  74.    document.hstbwd.src = gHstBwdImg[hstBwdIcon].src;
  75. }
  76.  
  77. //-------------------------------------------------------------------------------
  78.  
  79. function goHstBwd()
  80. {
  81.    var pageNum;
  82.  
  83.    if(gnCurrHstPos > 0)
  84.    {
  85.       gnCurrHstPos = gnCurrHstPos - 1;
  86.       pageNum = gnHstList[gnCurrHstPos];
  87.  
  88.       updatePage(pageNum);
  89.       updateContents(pageNum);
  90.       updateBar(pageNum);
  91.       gCurrPage = pageNum;
  92.    }
  93. }
  94.  
  95. //-------------------------------------------------------------------------------
  96.  
  97. function goHstFwd()
  98. {
  99.    var pageNum;
  100.  
  101.    if(gnHstList[gnCurrHstPos + 1] > 0)
  102.    {
  103.       gnCurrHstPos = gnCurrHstPos + 1;
  104.       pageNum = gnHstList[gnCurrHstPos];
  105.  
  106.       updatePage(pageNum);
  107.       updateContents(pageNum);
  108.       updateBar(pageNum);
  109.       gCurrPage = pageNum;
  110.    }
  111. }
  112.  
  113. //-------------------------------------------------------------------------------
  114.  
  115. function goFirstPage()
  116. {
  117.    openPage(gFirstPage);
  118. }
  119.  
  120. //-------------------------------------------------------------------------------
  121.  
  122. function goLastPage()
  123. {
  124.    openPage(gLastPage);
  125. }
  126.  
  127. //-------------------------------------------------------------------------------
  128.  
  129. function goPrevPage()
  130. {
  131.    var pageNum = gCurrPage - 1;
  132.  
  133.    if(pageNum < gFirstPage)
  134.       return;
  135.  
  136.    openPage(pageNum);
  137. }
  138.  
  139. //-------------------------------------------------------------------------------
  140.  
  141. function goNextPage()
  142. {
  143.    var pageNum = gCurrPage + 1;
  144.  
  145.    if(pageNum > gLastPage)
  146.       return;
  147.  
  148.    openPage(pageNum);
  149. }
  150.  
  151. //-------------------------------------------------------------------------------
  152.  
  153. function openPage(pageNum)
  154. {
  155.    if(pageNum >= gFirstPage && pageNum <= gLastPage)
  156.    {
  157.       gnCurrHstPos = gnCurrHstPos + 1;
  158.       gnHstList[gnCurrHstPos] = pageNum;
  159.       gnHstList[gnCurrHstPos + 1] = 0;
  160.  
  161.       updatePage(pageNum);
  162.       updateContents(pageNum);
  163.       updateBar(pageNum);
  164.       gCurrPage = pageNum;
  165.    }
  166. }
  167.  
  168. //-------------------------------------------------------------------------------
  169.  
  170. function openPage2(pageNum)
  171. {
  172.    if(pageNum >= gFirstPage && pageNum <= gLastPage)
  173.    {
  174.       gnCurrHstPos = gnCurrHstPos + 1;
  175.       gnHstList[gnCurrHstPos] = pageNum;
  176.       gnHstList[gnCurrHstPos + 1] = 0;
  177.  
  178.       updatePage(pageNum);
  179.       updateBar(pageNum);
  180.       gCurrPage = pageNum;
  181.    }
  182. }
  183.  
  184. //-------------------------------------------------------------------------------
  185.  
  186. function updatePage(pageNum)
  187. {
  188.    parent.main.location = gsFName + "_"  + pageNum + gsExtName;
  189. }
  190.  
  191. //-------------------------------------------------------------------------------
  192.  
  193. function updateContents(pageNum)
  194. {
  195.    if(gbContents == true)
  196.    {
  197.       if(parent.contents.gsName == "bookmark")
  198.          parent.contents.updateTree(pageNum);
  199.       else if(parent.contents.gsName == "index")
  200.       {
  201.          parent.contents.setIcon(gCurrPage, 0);
  202.          parent.contents.setIcon(pageNum, 1);
  203.       }
  204.    }
  205. }
  206.  
  207. //-------------------------------------------------------------------------------
  208.  
  209. function initialize()
  210. {
  211.    var nIconNum;
  212.  
  213.    if(gFirstPage == gLastPage)
  214.       nIconNum = 0;
  215.    else
  216.       nIconNum = 1;
  217.  
  218.    // initialize history.
  219.    gnCurrHstPos = 0;
  220.    gnHstList[gnCurrHstPos] = gFirstPage;
  221.    gnHstList[gnCurrHstPos + 1] = 0;
  222.  
  223.    document.writeln('<table cellspacing=0 cellpadding=0 border=0 width="100%"><tr>');
  224.  
  225.    if(gsTitle.length > 0)
  226.    {
  227.       document.writeln('<td> </td>');
  228.       document.write('<td bgcolor="#000000">');
  229.    }
  230.    else
  231.       document.write('<td> ');
  232.  
  233.    document.write('<img src="' + gSepImg.src + '" border=0 width=4 height=25>');
  234.  
  235.    document.write('<a href="#" onClick="JavaScript:goFirstPage(); return false"><img src="' + gRewImg[0].src + '" name="rew" border=0 width=25 height=25 alt="First Page"></a>');
  236.    document.write('<a href="#" onClick="JavaScript:goPrevPage(); return false"><img src="' + gPrevImg[0].src + '" border=0 width=23 height=25 name="prev" alt="Previous Page"></a>');
  237.    document.write('<a href="#" onClick="JavaScript:goNextPage(); return false"><img src="' + gNextImg[nIconNum].src + '" border=0 width=23 height=25 name="next" alt="Next Page"></a>');
  238.    document.write('<a href="#" onClick="JavaScript:goLastPage(); return false"><img src="' + gFfwdImg[nIconNum].src + '" border=0 width=25 height=25 name="ffwd" alt="Last Page"></a>');
  239.  
  240.    document.write('<img src="' + gSepImg.src + '" border=0 width=4 height=25>');
  241.  
  242.    document.write('<a href="#" onClick="goHstBwd(); return false"><img src="' + gHstBwdImg[0].src + '" border=0 width=25 height=25 name="hstbwd" alt="Go to Previous View"></a>');
  243.    document.write('<a href="#" onClick="goHstFwd(); return false"><img src="' + gHstFwdImg[0].src + '" border=0 width=25 height=25 name="hstfwd" alt="Go to Next View"></a>');
  244.  
  245.    document.writeln('<img src="' + gSepImg.src + '" border=0 width=4 height=25></td>');
  246.  
  247.    if(gsTitle.length > 0)
  248.    {
  249.       document.writeln('<td bgcolor="#000000" align="right">');
  250.  
  251.       if(gsLink.length > 0)
  252.       {
  253.          document.write('<a href="' + gsLink + '"');
  254.  
  255.          if(gsTarget.length > 0)
  256.             document.write(' target="' + gsTarget + '">');
  257.          else
  258.             document.write(' target="_blank">');
  259.       }
  260.  
  261.       document.write('<b><font color="gold" size="2" face="sans-serif, Arial, Helvetica, Geneva">' + gsTitle + '</b>');
  262.  
  263.       if(gsLink.length > 0)
  264.          document.write('</a>');
  265.  
  266.       document.writeln('</td><td bgcolor="black">  </td>');
  267.    }
  268.  
  269.    document.writeln('</tr></table>');
  270. }
  271.  
  272. //-------------------------------------------------------------------------------
  273.