Ich habe Elemente, die zu Beginn display:none haben. Bei Klick auf einen bestimmten Link werden Sie angezeigt.
Nun sollen sie geschlossen werden, wenn man auf der page einen Klick auslöst, welcher nicht innerhalb dieses Elements ist.Geht es jetzt um ein spezielles Element, oder mehrere (auf einmal)?
2 Links mit jeweils einer zugehörigen DIV.
Wird Link A angeklickt soll DIV A gezeigt werden. Klickt man auf Link B soll DIV A ausgeblendet und DIV B eingeblendet werden (und umgekehrt).
Klickt man irgendwo hin, was nicht Link A oder B ist und sich nicht in einem der beiden DIVs befindet sollen beide DIVs ausgeblendet werden.
Es klappt bisher nur, solange keine weiteren Elemente in den DIVs sind, wie bspw. ein INPUT, welches angeklickt wird, da ja nur TARGET abgefangen wird und das DIV dann nicht mehr TARGET ist.
Der IE kennt element.contains(), mit dem man prüfen kann, ob ein Element Nachfahre eines anderen Elements ist.
Manche andere Browser unterstützen das ebenfalls bereits nativ; für die anderen lassen sich Workarounds ergooglen.
Gibt es die Möglichkeit in meiner onBodyClick Funktion alle currentTargets abzufangen und in ein Array zu speichern? Scheint mir weniger Ladezeit in Anspruch zu nehmen als verschiedene Workarounds einzubinden.