Autor | Zpráva | ||
---|---|---|---|
malek Profil |
zdravim
ako dam vsetkym prvkom s rovnakym clasom akciu naraz. chcem ze ak uzivatel klikne na jeden prvok tak aby sa vykonala nieaka akcia pre vsetky prvky ktore maju isty class :) napr uzivatl klikne na prvok, ten ma onclick="niekaFce()" a ta nieakaFce napr sfarby vsetky prvky co maju class="sfarby" da sa to neiak rozumne spravit? |
||
Leo Profil |
#2 · Zasláno: 23. 2. 2008, 16:11:49
JS to v sobe jako vestavenou fci nema, musi to nekdo napsat. Existuje napriklad knihovna cssquery:
http://dean.edwards.name/my/cssQuery/ kde pouzijete normalni CSS selektory. Ovsem predtim, nez se do toho pustite (a uzivatel bude stahovat buhvikolik kB dat navic) uvazte, jestli se ty prvky nedaji charakterizovat jinak (treba je to dana znacka uvnitr jine konkretni znacky), Leo |
||
_dot_ Profil * |
#3 · Zasláno: 23. 2. 2008, 16:17:40
Podle me je to pekna blbina, jelikoz class neni jednoznacny identifikator => muze byt se stejnou class vice prvku, kdezto id muze existovat pouze jedno.
|
||
Leo Profil |
#4 · Zasláno: 23. 2. 2008, 16:18:29
"Podle me je to pekna blbina, jelikoz class neni jednoznacny identifikator => muze byt se stejnou class vice prvku, kdezto id muze existovat pouze jedno."
No vsak to je taky duvod, proc se class pouziva ne? :-) Leo |
||
Časová prodleva: 3 měsíce
|
|||
Ondra_99 Profil * |
#5 · Zasláno: 16. 5. 2008, 18:22:05
Podle me je to pekna blbina, jelikoz class neni jednoznacny identifikator => muze byt se stejnou class vice prvku, kdezto id muze existovat pouze jedno.
O to tam taky de, ze ti to vybere vsechny ty objekty, pres ID ti to vybere jeden, zatimco takto ti to vybere kolekci objektu. Jinak JS to defaultne nema, je opravdu treba pouzit nastavbu, doporucuju jQuery (jQuery.com) je dost dobrej, free a ma velke mnozstvi dalsich pluginu |
||
los Profil * |
#6 · Zasláno: 16. 5. 2008, 18:47:16
Vo väčšine prípadov je použitie getElementsByClassName zbytočné, ako napríklad aj v tomto. Stačí pri kliknutí nastavovať className nadradenému elementu a do CSS doplniť pravidlá pre zafarbenie podradených elementov.
|
||
Časová prodleva: 3 roky
|
|||
Bobo Profil * |
#7 · Zasláno: 2. 4. 2011, 16:48:40
Tak jsem narazil na podobný problém a našel jsem skvělé a jednoduché řešení:
function getElementByClass(theClass) { var allHTMLTags = new Array(); //Create Array of All HTML Tags var allHTMLTags=document.getElementsByTagName("*"); //Loop through all tags using a for loop for (i=0; i<allHTMLTags.length; i++) { //Get all tags with the specified class name. if (allHTMLTags[i].className==theClass) { //Place any code you want to apply to all //pages with the class specified. //In this example is to “display:none;” them //Making them all dissapear on the page. allHTMLTags[i].style.display=’none’; } } } zdroj: http://www.actiononline.biz/web/code/how-to-getelementsbyclass-in-javascript-the-code/ (pokud to budete kopírovat z odkazu a ne odsud, tak pozor, jsou tam špatné uvozovky, kvůli kterým to nefunguje) Jinak já to potřeboval v případě, kdy mám ve formuláři několik skupin checkboxů a u některé skupiny chci mít tlačítko, které invertuje výběr. Nemohu zde použít nadřazený element, protože všechny checkboxy jsou v jednom formu, a tudíž by mi to měnilo všechny checkboxy ve formuláři, místo jen těch v dané skupině. |
||
Časová prodleva: 13 let
|
0