Autor Zpráva
dedek
Profil *
Ahoj,
jak můžu omezit vypsání všech ID pouze v určitém DIV-u s nějakým ID, ne na celém stránce. Děkuji
Mlocik97
Profil
dedek:
ani nerozumiem dotazu. Chcete vypisat "ID elementov vo vnutry konkretneho divu"?
RastyAmateur
Profil
Tak nejprve získáš všechny elementy, třeba pomocé document.querySelectorAll('#prispevky *[id]'), pak to projdeš cyklem a uděláš si s tím vše, co chceš.
dedek
Profil *
RastyAmateur:
Díky a co znamená zápis *[id] ?

Zkoušel jsem získat všechny odstavce (p) s názvem třídy '5' pouze uvnitř div#prispevky
var p = document.querySelectorAll('#prispevky P.[5]');
Ale něco mám špatně
weroro
Profil
dedek:
Preštuduj si tento zoznam Seznam všech CSS 3 selektorů
dedek
Profil *
weroro:
Není tam jediná zmíňka o querySelectorAll, tak nevím co je to za radu..


weroro:
Není tam jediná zmíňka o querySelectorAll, tak nevím co je to za radu..
Kajman
Profil
Je tam vysvětlení parametru té funkce querySelectorAll.

Tedy to, na co jste se ptal...
co znamená zápis *[id] ?
dedek
Profil *
RastyAmateur:
Tak jsem to ještě zkoušel takto, tohle jede (nevim zda je to správně)
var p = document.querySelectorAll('#prispevky > p.a5');
a tohle nejde
var p = document.querySelectorAll('#prispevky > p.5');
Jako by nebylo možné používat pouze samotná čísla pro název tříd či id :(
Radek9
Profil
dedek:
Viz www.w3.org/TR/CSS21/syndata.html#characters
„In CSS, identifiers (including element names, classes, and IDs in selectors) can contain only the characters [a-zA-Z0-9] and ISO 10646 characters U+00A0 and higher, plus the hyphen (-) and the underscore (_); they cannot start with a digit, two hyphens, or a hyphen followed by a digit.“

Třída nesmí začínat číslovkou.
dedek
Profil *
Radek9:
Díky, to jsem nemohl najít.


Kajman:
Asi jsem slepý..
Kajman
Profil
Id měla dříve také omezení - že musí začínat písmenem. Číselné třídy by možná šlo zacílit přes pomalý atributový selektor, ale raději bych se jim vyhnul.
document.querySelectorAll('#prispevky p[class~="5"][id]').forEach(function(el){alert(el.id);});
RastyAmateur
Profil
dedek:
Co je vlastně tvým cílem? Původně jsi se ptal na výběr všech elementů v jiném elementu, které mají nějaké ID a najednou tu řešíš přímé potomky, které jsou odstavce a zároveň mají třídu, která obsahuje nějaké číslo (zřejmě id)?
Kolemjdoucí
Profil *
Zdravím. Možu sa optat jestli pomocí document.querySelector() možu naklonovat celý element? Pokud použiju document.getElementById() tak to funguje.


Eště přidám můj kód
var element = document.querySelector ('#wrapper > #code');
var cln = element.cloneNode(true);
document.getElementById("detaily").append(cln);  
V tem divu #detaily chcu mět enom celý (šecko ostatni smazat) ten div#code, ne enom jeho obsah.
Tož díky za pomoc.
RastyAmateur
Profil
Kolemjdoucí:
Co takhle to třeba zkusit?

Jestli to chceš mít včetně toho #code, tak si s tím prostě trochu pohraj. Vezmi si rodiče, pak odstraň všechny ostatní elementy kromě toho jednoho. Nebo si ten obalovací zkopírovaný #code vytvoř a pak až do něj vlož původní obsah.
Kolemjdoucí
Profil *
Tož nedělá to nic z teho s čim sem chtěl poradit, do div#detaily sa to přidá - nenahradí sa to a div#code sa take nazkopiruje :(
RastyAmateur
Profil
Kolemjdoucí:
Ty jsi ale pořádně ani nepopsal, s čím chceš poradit. Nebo minimálně já jsem to nepochopil.

Co teď koukám, tak var cln = element.cloneNode(true); ti nakopíruje obsah včetně toho konkrétního divu (v tomto případě #code), takže stále nevím, co řešíš. Jestli chceš celý ten původní element ještě smazat, tak k tomu už jen podle názvu neslouží cloneNode, ale remove.
dedek
Profil *
Ještě se vrátím k metodě querySelectorAll(). Tohle mi fakt vůbec nejde.
Potřebuji získat v div#data všechny první DIV a v každem tom prvním DIV získat první H1
var h1 = document.querySelectorAll('#data > DIV > H1[0]');
Může někdo poradit? Díky

<div id="data">
<div><h1>tento nadpis chci</h1><h1>tento nadpis nechci</h1></div>
<div><h1>tento nadpis chci</h1><h1>tento nadpis nechci</h1></div>
<div><h1>tento nadpis chci</h1><h1>tento nadpis nechci</h1></div>
<div><h1>tento nadpis chci</h1><h1>tento nadpis nechci</h1></div>
<div><h1>tento nadpis chci</h1><h1>tento nadpis nechci</h1></div>
</div>
Radek9
Profil
dedek:
Seznam všech CSS 3 selektorů, příp. Seznam všech CSS 3 selektorů
RastyAmateur
Profil
dedek:
To už je potřetí, co ti někdo dává referenci na Seznam všech CSS3 selektorů. Sakra to na to dlabeš a vůbec jsi si to neprošel, nebo ani s tím nejsi schopen to vymyslet? Kdy jsi v CSS viděl něco jako #data > DIV > H1[0]?
dedek
Profil *
Studuji to už týden, ale nějaký příklad kde jsou uvedeny hranaté závorky fakt nevidím:-(
Kajman
Profil
dedek:
V tom odkaze je v textu 19 párů hranatých závorek. Pokud je nevidíte, zkuste si pomoci vyhledáváním v prohlížeči. Pokud neumíte klikat na odkazy a číst text v prohlížeči, kupte si papírovou knížku o css v nejbližším knihkupectví.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0