SCHNittER: Browserweiche

Hallo,

ich habe eine Browserweiche programmiert und trotzdem bringt der NN4.7 eine Fehlermeldung und führt die Funktion nicht aus?

Danke im vorraus

function on(i)
 {
  if(navigator.appName=="Netscape"){
   document.all[i].style.visibility = "show";
   document.all[i].style.fontSize = "10";}
  else
   document.all[i].style.visibility = "visible";
   document.all[i].style.fontSize = "10";
 }

function off(i)
 {
  if(navigator.appName=="Netscape"){
   document.all[i].style.visibility = "hide";
   document.all[i].style.fontSize = "1";}
  else
   document.all[i].style.visibility = "hidden";
   document.all[i].style.fontSize = "1";
 }

  1. Hallo,

    Tag!

    document.all[i].style.visibility = "show";

    "document.all" ist Netscape unbekannt und nur bestandteil vom IE (und allem, was IE im Hintergrund benutzt)

    bye
    ich

    1. document.layers[].style.visibility habsch auch schon probiert, mit dem selben Erfolg

      document.all[i].style.visibility = "show";

      "document.all" ist Netscape unbekannt und nur bestandteil vom IE (und allem, was IE im Hintergrund benutzt)

      bye
      ich

      1. document.layers[].style.visibility habsch auch schon probiert, mit dem selben Erfolg

        http://selfhtml.teamone.de/javascript/objekte/layers.htm#visibility

        Gruß
        Norbert

        1. bei window.document.layers[i].visibility und
              window.document.layers[i].font kommt als Fehlermeldung has no properties

          1. MoiN!

            bei window.document.layers[i].visibility und
                window.document.layers[i].font kommt als Fehlermeldung has no properties

            Wenn du Layer ein- und ausschalten willst, nimm diesen Code:

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

            function showlayer(layerid)
              {
              if (ns4) document.layers[layerid].visibility = "show"
              else if (v6) document.getElementById(layerid).style.visibility = "visible";
              else if (ie4) document.all[layerid].style.visibility = "visible"
              }

            function hidelayer(layerid)
              {
              if (ns4) document.layers[layerid].visibility = "hide"
              else if (v6) document.getElementById(layerid).style.visibility = "hidden";
              else if (ie4) document.all[layerid].style.visibility = "hidden"
              }

            Funktioniert mit Netscape 4, IE 4 und ganz ganz vielen W3C-DOM-kompatiblen Browsern (also Netscape 6, Mozilla, IE 5, IE 5.5, IE 6, Opera, etc).

            PS: Sowas gibts auch bei SelfHTML(http://selfhtml.teamone.de/dhtml/) und in den Feature-Artikeln (http://aktuell.de.selfhtml.org/artikel/dhtml/index.htm)

            - Sven Rautenberg

            1. Danke, aber wie frage ich den Browser dann ab, muss doch anschließend eine Variable auf ns4, ie4 oder v6 setzen oder??