Autor | Zpráva | ||
---|---|---|---|
dedek Profil * |
#1 · Zasláno: 25. 8. 2019, 22:16:40
Ahoj, jak se dá udělat zápis v CSS pro všechny ID v tomto html
<h1 id="my-1">Jedna</h1> <h1 id="my-2">Dva</h1> <h1 id="my-2">Tři</h1> #my-1, #my-2, #my-3 {color:red;} #my-[*] {color:red;} |
||
RastyAmateur Profil |
dedek:
Náhodou existuje, ale moc nechápu, na co by to mohlo být třeba... Proč tomu nepřidat nějakou třídu? |
||
dedek Profil * |
#3 · Zasláno: 26. 8. 2019, 11:31:12
Díky, proč tomu nepřidám třídu? No bylo by to samozřejmě lepší a jednodušší, ale potřebuji posléze v JS získat při tom procházení ta ID, což když budu v JS procházet podle class, tak ta ID nezískam, ne?
<h1 id="my-1" class="sez">Jedna</h1> <h1 id="my-2" class="sez">Dva</h1> <h1 id="my-2" class="sez">Tři</h1> |
||
RastyAmateur Profil |
#4 · Zasláno: 26. 8. 2019, 11:39:38
dedek:
Můžeš v JS pak použít metodu getAttribute() a pak normální práci s řetězci. Ale jako netvrdím, že je to také ideální řešení. Asi záleží, co chceš dělat a co tobě vyhovuje. Já se třeba ta IDčka snažím opravdu využívat pouze pro javascript opravdu jako identifikátor konkrétního elementu, o kterém 100% vím, že tam je, kde tam je a proč tam je. Pokud automaticky generuješ nějaký seznam věcí a potřebuješ v určitém okamžiku jejich identifikátor, řešil bych to tím, že si ten identifikátor dám například do atributu data-id="..." a pak si ho odsud vytáhnu.
Ale vážně záleží na konkrétním problému. Ty jsi se prve ptal na CSS a nyní už se tu bavíme o JS. |
||
Tomášeek Profil |
#5 · Zasláno: 26. 8. 2019, 13:17:46
dedek:
Ono hlavně motáš jabka a hrušky. Element může mít ID a CLASS současně, můžeš ho zaměřit kontextem, atd. Pokud budeš procházet pomocí tříd, tak i v JS id samozřejmě získáš. document.getElementsByClassName('sez')[0].id // kde misto indexu 0 budes mit asi cyklus for a pouzijes iteracni promennou Případně, pokud se jedná o všechny nadpisy (všechny alespoň v rámci daného kontextu - společného rodiče), pak: - v CSS jednoduše h1 {...} , případně kontext h1 {...}
- v JS obdobne: document.getElementsByTagName('h1')[i].id
|
||
dedek Profil * |
A jak dostanu ID 'list-1' pokud kliknu na pložku 'Jedna', nebo ID 'list-3' pokud kliknu na pložku 'Osm'?
<div id="list-1"> <p class="a" onclick="Myfnv(this)">Jedna</p> <p class="b" onclick="Myfnv(this)">Dva</p> <p class="c" onclick="Myfnv(this)">Tři</p> <div id="list-2"> <p class="a" onclick="Myfnv(this)">Čtyři</p> <p class="b" onclick="Myfnv(this)">Pět</p> <p class="c" onclick="Myfnv(this)">Šest</p> <div id="list-3"> <p class="a" onclick="Myfnv(this)">Sedm</p> <p class="b" onclick="Myfnv(this)">Osm</p> <p class="c" onclick="Myfnv(this)">Devět</p> Chybí tam uzavření </div> .. |
||
RastyAmateur Profil |
#7 · Zasláno: 26. 8. 2019, 18:08:59
dedek:
Node.parentElement by nestačil? Za předpokladu, že to </div> má být až za odstavcemi, ne samostatný element před nimi...
|
||
Tomášeek Profil |
dedek:
this.parentNode.id RastyAmateur: Ty neuzavřené divy jsou překlep tady v kódu. I kdyby ne, tak rodič (nejbližší element o úroveň výše) je pořád ten nejblíže otevřený div. |
||
RastyAmateur Profil |
#9 · Zasláno: 26. 8. 2019, 19:23:31
Tomášeek:
„I kdyby ne, tak rodič (nejbližší element o úroveň výše) je pořád ten nejblíže otevřený div.“ On se pod tím ještě opravil, že tam chybí </div> . Já jsem se ale bál, jestli by nezplodil něco typu:
<div id="list-1"></div> <p class="a" onclick="Myfnv(this)">Jedna</p> ... |
||
dedek Profil * |
#10 · Zasláno: 26. 8. 2019, 21:01:36
No správně to je takto
<div id="list-1"> <p class="a" onclick="Myfnv(this)">Jedna</p> <p class="b" onclick="Myfnv(this)">Dva</p> <p class="c" onclick="Myfnv(this)">Tři</p> </div> <div id="list-2"> <p class="a" onclick="Myfnv(this)">Čtyři</p> <p class="b" onclick="Myfnv(this)">Pět</p> <p class="c" onclick="Myfnv(this)">Šest</p> </div> <div id="list-3"> <p class="a" onclick="Myfnv(this)">Sedm</p> <p class="b" onclick="Myfnv(this)">Osm</p> <p class="c" onclick="Myfnv(this)">Devět</p> </div> |
||
RastyAmateur Profil |
#11 · Zasláno: 26. 8. 2019, 22:56:37
dedek:
Tak to už jsme ti poradili :-) |
||
dedek Profil * |
#12 · Zasláno: 27. 8. 2019, 08:16:38
Tak jdu studovat, dík.
|
||
Kajman Profil |
#13 · Zasláno: 27. 8. 2019, 08:26:54
Z funkce Myfnv se tam spíše dostanete přes
nazevPrvnihoParametruFunkceMyfnv.parentNode.id |
||
Časová prodleva: 4 roky
|
0