⊗jsPmDmEGAS 342 of 505 menu

Selectores complejos de elementos DOM en JavaScript

Hagamos algo más complejo. Supongamos, por ejemplo, que tenemos el siguiente código HTML:

<div id="parent"> <input> </div>

Obtengamos una referencia al input que se encuentra dentro del bloque #parent:

let elem = document.querySelector('#parent input'); console.log(elem);

Como puedes ver, obtuvimos nuestro input mediante el selector #parent input. En realidad, este selector CSS selecciona todos los inputs que se encuentren en #parent.

Supongamos, por ejemplo, que tenemos dos de estos inputs:

<div id="parent"> <input value="1"> <input value="2"> </div>

Entonces, si escribimos el selector #parent input en el código CSS, afectará a ambos inputs:

#parent input { color: red; }

Sin embargo, el método querySelector no funciona así. Siempre obtiene solo un elemento - el primero que coincida con el selector especificado. Veamos un ejemplo. Supongamos que tenemos inputs con la clase elem:

<input class="elem"> <input class="elem">

Obtengamos el primero de estos inputs:

let elem = document.querySelector('.elem'); console.log(elem); // aquí estará el primer input

Dado el siguiente HTML:

<div id="block"> <p>1</p> <p>2</p> </div>

Obtenga una referencia al primer párrafo dentro del div con id igual a block.

Dado el siguiente HTML:

<div class="block"> <p>1</p> <p>2</p> </div>

Obtenga una referencia al primer párrafo dentro del div con clase block.

Dado el siguiente HTML:

<p class="www">text</p> <p class="www">text</p>

Obtenga una referencia al primer párrafo con clase www.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar