Javascript - getElementById på flera id av samma namn?

Permalänk
Medlem

Javascript - getElementById på flera id av samma namn?

Hej

Har stött på ett irriterande problem som jag inte vet hur jag ska lösa.
Det jag vill göra är att gömma flera (många) <img> som har id=warn
Tydligen så går det inte att ha samma id och göra detta. Som det är nu i koden nedan så gömmer den bara den första <img>
Jag har försökt med flera olika nya getElementByClass-funktioner men ingen verkar ha fungerat eller så har jag anropat den fel.

<html> <head> </head> <body> <img id="warn" class="w" src="http://skorpion.se/tellit/iui/removewarn.png"> <img id="warn" class="w" src="http://skorpion.se/tellit/iui/removewarn.png"> <img id="warn" class="w" src="http://skorpion.se/tellit/iui/removewarn.png"> <a onclick="document.getElementById('warn').style.display='none'">hide</a> </body> </html>

Jag vill (helst) inte byta till unika id på samtliga <img> och därmed få lov att köra en massa unika document.getElementById().

Så är det nån som sitter på en lösning kanske?

MVH Niclas

Visa signatur

Har bytt namn från: nulleman ~ Blogg: http://skorpion.se
MacBook Pro: 15.4' ~ 1.83GHz ~ 1512MB RAM ~ 80GB HDD
Medlem i signaturen blodtörstiga Appleanvändare

Permalänk
Medlem

Ramverk

Jag rekommenderar dig att titta på något av de ypperliga Javascript-ramverk som finns.
Själv använder jag mest Prototype (http://www.prototypejs.org)

där hade följande kod gömt dina bilder:

$$('img.w').invoke('hide');

Visa signatur

"Memory is like an orgasm. It's a lot better if you don't have to fake it." - Seymore Cray

Permalänk
Medlem

Ett ID ska vara ett unikt namn på ett element. Antingen får du gå via getElementById() på en container, och därefter getElementByTag() på barn-elementen - eller så använder du t.ex. Mootools och deras Selectors. Med Mootools hade du kunna gå på css-klassen,

$$('.w').each(function(element) { /* Gör det du ska med elementet */ });

Permalänk
Medlem

Som bjornie säger ska IDn vara unika. Det du vill använda här är en klass.