Larsmann: Problem mit IE und Netscape

HAllo habe folgendes Problem:

Möchte einen Informationstext in meine Seite einbetten, der erst sichtbar wird, wenn auf ein button gedrückt wird.

Ich mache das folgendermaßen:

in der html-datei steht folgendes:

<script language="JavaScript">

function details_einblenden(){
    document.all.details1.style.display="block";
  }
</script>
.
.
<style>
 #details1{display:none;}
</style>
.
.
.
<tr id="details1">
...
<a href="javascript:details_einblenden()">
...
</tr>

--------------------------------

Im Intenet-Explorer kein Thema aber mit Mozilla kommt er mit der id nicht zurecht.
Benutze ich anstelle der id z.B. den Namen eines Textfeldes innerhalb eines Formulars und spreche dieses per document.formular.textfeld.style.display='block'; an

dann klappt es auch mit Mozilla!!!

Gibt es eine Möglichkeit mit Mozilla auch über die id bestimmte Tags anzusteuern.

(Ich möchte nicht mit Layern arbeiten und nicht für jeden Browser eine explizite Seite schreiben!).

Könnt ihr mir helfen???

Gruß, Larsmann

  1. hab zwar mit mozilla keine erfahrung, würde aber mal versuchen, nicht der <tr> eine id zu geben, sodnern in die <tr> noch ein <div> einzubetten mit der entsprechenden id. vielleicht kann er das besser abhaben...

    mfg, leo

    1. hab zwar mit mozilla keine erfahrung, würde aber mal versuchen, nicht der <tr> eine id zu geben, sodnern in die <tr> noch ein <div> einzubetten mit der entsprechenden id. vielleicht kann er das besser abhaben...

      mfg, leo

      Das akzeptiert Mozilla leider auch nicht.

      Es funktioniert nur wenn das Tag über den Namen angesprochen wird- also nur bei Formularen!

      Wenn man jetzt aber einen Tabelle darstellen möchte ist das mit Textfeldern etc. graphisch nicht gerade hübsch.

      Glaube ich muss echt zwischen IE und Mozilla differenzieren, oder auf PHP zurückgreifen!

  2. Hi,

    Im Intenet-Explorer kein Thema aber mit Mozilla kommt er mit der id nicht zurecht.

    falsch! Der Mozilla wie auch fast alle anderen Browser kennen die Microsoft-Erfindung document.all nicht.
    Verwende die standardisierte Syntax document.getElementById("IdName") und alle einigermaßen moderne Browser verstehen das (auch der IE ab Version 5).

    freundliche Grüße
    Ingo

    1. Danke das war es! Jetzt klappts!

      Gruß, Larsmann

  3. Hi,

    und nicht nur, daß Du das proprietäre document.all verwendest, ...

    document.all.details1.style.display="block";
    <tr id="details1">

    ... Du weißt der Tabellen-Zeile auch noch fälschlicherweise "block" zu, statt dem korrekten "table-row" (welches der IE aber noch nicht kennt).

    Eine funktionierende Routine (mit weiteren Erläuterungen zur sauberen Programmierung, die hilfreich sein dürften): http://Coding.vampirehost.de/Toggle

    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"!
    1. Hallo,

      deine Variante kannte ich noch nicht, hat mir aber ganz neue Möglichkeiten eröffnet!

      Gruß, Lars