lp: Mozilla/Netscape/JS

Hallo,

ich habe folgendes Skript, das funktioniert leider nicht auf Mozilla 1.6 und Netscape 7.0 bzw. zeigt keine Layer an:

// DHTML Navigate Subhomepages Popup Layer!

ns4 = (document.layers)? true:false;
ie4 = (document.all)? true:false;

var HIDE = null;
var openLayer = 0;
var howtoLoop = 0;

// anzeigen des Layers
function showMenu(aktLayerNr)
{
    if (ns4) setTimeout("clearTimeout(HIDE);",100);
    else clearTimeout(HIDE);
    if (openLayer!=0 && openLayer!=aktLayerNr) hideMenu(openLayer);
    openLayer = aktLayerNr;

if (ns4)
    {
        if (aktLayerNr==17 && howtoLoop>=5) document.layers['SubLayer'+aktLayerNr].top = 560 - document.layers['SubLayer'+aktLayerNr].clip.bottom;
        document.layers['SubLayer'+aktLayerNr].visibility = "show";
    }
    else if (ie4)
    {
        if (aktLayerNr==17 && howtoLoop>=5) document.all['SubLayer'+aktLayerNr].style.top = 560 - document.all['SubLayer'+aktLayerNr].offsetHeight;
        document.all['SubLayer'+aktLayerNr].style.visibility = "visible";
    }
}

// verstecken des Layers nach delay-Millisekunden
function timehideMenu(aktLayerNr)
{
  var delay = 800;
  if (ns4 || ie4)
  {
      HIDE = setTimeout("hideMenu("+aktLayerNr+");",delay);
  }
}

// verstecken des Layers
function hideMenu(aktLayerNr)
{
 clearTimeout(HIDE);
    if (ns4) document.layers['SubLayer'+aktLayerNr].visibility = "hide";
    else if (ie4) document.all['SubLayer'+aktLayerNr].style.visibility = "hidden";
}

function hideAktLayer()
{
    if (openLayer!=0) hideMenu(openLayer);
    openLayer = 0;
}

var bIsModeOffline = false;
function njs_window_full(fullurl,width,height)
 { m_window=window.open(fullurl,'m_window','toolbar=1,location=0,directories=1,status=1,menubar=1,scrollbars=1,resizable=1,width='+width+',height='+height);
   if (m_window.opener == null) { m_window.opener = self; }
 }
function njs_window(fullurl,width,height)
 { m_window=window.open(fullurl,'m_window','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,width='+width+',height='+height);
   if (m_window.opener == null) { m_window.opener = self; }
 }
Thanx für einige Tipps!
lp

  1. ns4 = (document.layers)? true:false;
    ie4 = (document.all)? true:false;

    Das ganze Script kannst Du in die Tonne kloppen, ist doch uralt!

    Gruß
    Avalon

  2. Hallo,

    ich habe folgendes Skript, das funktioniert leider nicht auf Mozilla 1.6 und Netscape 7.0 bzw. zeigt keine Layer an:
    ns4 = (document.layers)? true:false;
    ie4 = (document.all)? true:false;

    kein Wunder - Mozilla (und damit auch Netscape>6) kennt weder document.layers noch document.all. Du möchtest DOM-Syntax verwenden, also z.B. http://selfhtml.teamone.de/javascript/objekte/document.htm#get_element_by_id um auf Elemente mit einer ID zuzugreifen.

    Grüße aus Nürnberg
    Tobias

    --
    Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
    1. Hi,

      kein Wunder - Mozilla (und damit auch Netscape>6) kennt weder document.layers noch document.all. Du möchtest DOM-Syntax verwenden,

      Ergänzend: *Alle* neuen Browser unterstützen diese Syntax. Wer also auf "olle Kamellen" (Nav 4.x & IE 4) verzichten kann, ist fein aus dem Schneider ...

      Gruß, Cybaer

      --
      Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!