Hi,
ich schreibe gerade an einem JavaScript-BBCode-Editor. Da habe ich einen BUTTON, wo, wenn man drauf klickt, ein Farbmischer (ein DIV indem eine TABLE liegt) ein-/ausgeblendet werden soll. Das sollte dann so aussehen (display ist standardtmaßig auf 'none' gesetzt):
<button class="nofix" onclick="
[code lang=javascript]document.getElementById('Farben').style.display = (document.getElementById('Farben').style.display == 'block') ? 'none' : 'block'
~~~">[/code]
Im IE funzt das auch wunderbar. Der Harken: sobald ich es in Firefox/Opera teste, ist alle freude auch wieder weg:
Es wird zwar durchgeführt, doch sobald er alle unter 'onclick' definierte Befehlen ausgeführt hat, wird der display wieder zurückgesetzt.
Es ist auch egal, ob ich den Event-Handler direkt (wie im Bsp) im BUTTON-Tag definiere oder mit dem 'Event'-Objekt.
Das seltsamste ist: Wenn ich 'onmouseover' verwende, funzt's.
Ich habe dann auch noch probiert ob es funzt, wenn ich's standardtmaßig auf 'block' setzte und das Script dann so schreibe:
`document.getElementById('Farben').style.display = (document.getElementById('Farben').style.display == 'none') ? 'block' : 'none'`{:.language-javascript}
Aber auch da wird es am Ende wieder zurück gesetzt.
Auch wenn ich es mit einer anderen CSS-Eigenschaft probiere, passiert das Gleiche.
lg Munshta