das ist meine JavaScript-Funktion:
Parameter: die ID eines div-Bereichs, die ID eines Images (Button)
was ist div? du rufst es unten auf mit
showhide(id_div, id_img)
Normalerwiese sollte der Broswer nicht Wissen was du mit id_div und id_img meinst, da diese nirgendwo definiert sind (der IE tut es vielleicht, aber das ist ein fehlerhaftes verhalten - den er rät lediglich was du meinst).
du musst erst eine Referenz auf die Objekte erzeugen/holen.
z.b. mit geElementById()
function showhide(div,img) {
if (div.style.display=='none' &&
div.style.visibility=='hidden') {
div.style.display='block';
div.style.visibility='visible';
img.src='arrow_button_top.gif';
}
else {
div.style.display='none';
div.style.visibility='hidden';
soweit ich das weiß reicht display none/block und visibility = 'visible' da das Element ja bei display='none'
nicht angezeigt werden sollte.
Bei Klick auf das Image wird der OnClick ausgelöst und der div-Bereich sollte sichtbar bzw. unsichtbar werden. Tut er auch, aber eben nicht immer. Hilft dir das weiter?
Ich vermute mal, das es eben ein wenig länger dauert, wenn der browser erst raten muss was du meinst, vielleicht bessert es sich schon, wenn du die richtige Referenz holst.
Vielleicht kannst du auch mal eine Seite zeigen, wo du das Skript eingebaut hast, dann kann man sich das auch angucken, da es bei Timeing Problemen natürlich immer schwer ist zu sagen wo der Fehler liegt.
Struppi.