JS: Zugriff auf mehrere DIVs gleichzeitig
Tanja
- javascript
0 Ingo Turski0 Cybaer
Hi,
würde gerne via Javascript bei Klick auf einen Button die Größe mehrerer DIVs auf einen Schlag verändern.
Dazu habe ich versucht:
<div id="test">test</div>
<script>
...
document.all.test.style.width='0px';
...
</script>
Habe ich nur einen DIV mit dieser ID, so klappts auch; aber wenn ich mehrere mit dieser ID habe, so wird die Eigenschaft von keinem einzigen geändert :(
Warum?
Wie wäre das "Problem" stattdessen zu lösen?
Hi,
document.all.test.style.width='0px';
warum willst Du nur für Microsoft-Browser schreiben?
wenn ich mehrere mit dieser ID habe, so wird die Eigenschaft von keinem einzigen geändert :(
Warum?
Eine ID heisst ID, weil sie individuell und einzigartig ist und nur einmal in einem Dokument vorkommen darf.
freundliche Grüße
Ingo
Hi,
document.all.test.style.width='0px';
warum willst Du nur für Microsoft-Browser schreiben?wenn ich mehrere mit dieser ID habe, so wird die Eigenschaft von keinem einzigen geändert :(
Warum?
Eine ID heisst ID, weil sie individuell und einzigartig ist und nur einmal in einem Dokument vorkommen darf.
und was ist wenn er jetzt nicht weiss das man per css klassen und ID's verwenden kann?
versuche es mal mit .class und nicht mit #ID... dann sollte es gehen.
gruß
Lethian
hi,
und was ist wenn er jetzt nicht weiss
Dann müsste sie sich erst mal operieren lassen, um ein "er" zu werden.
das man per css klassen und ID's verwenden kann?
Was hat denn jetzt CSS damit zu tun, wie man mit Javascript Elemente anspricht?
versuche es mal mit .class und nicht mit #ID... dann sollte es gehen.
Eine Methode, um Elemente über ihre Klasse auszuwählen, existiert in gängigen Javascript-Implementationen nativ nicht.
gruß,
wahsaga
Hi,
Eine Methode, um Elemente über ihre Klasse auszuwählen, existiert in gängigen Javascript-Implementationen nativ nicht.
*Noch* nicht ...
... was aber natürlich nichts daran ändern wird, für ältere Browser dann doch die Funktionalität nachrüsten zu müssen. ;-)
Gruß, Cybaer
Hi,
Wie wäre das "Problem" stattdessen zu lösen?
Z.B. entweder alle DIVs des übergeordneten Elements mit z.B. getElementsByTagName() in einer Schleife durchgehen und einzeln setzen, oder allen entsprechenden DIVs mit CLASS eine Klasse zuweisen, und dann alle DIVs durchgehen und die mit dem className setzen (oder nach getElementsByClass() googeln, einbinden und das verwenden), oder Coding: CSS-Regeln (& Stylesheets) auslesen & ändern einbinden und damit dann die CSS-Eigenschaften der Klasse direkt für alle im Stylesheet ändern.
Gruß, Cybaer