Pemilih DOM Elemen Kompleks dalam JavaScript

Mari lakukan sesuatu yang lebih kompleks. Sebagai contoh, katakan kita mempunyai kod HTML seperti ini:

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

Mari dapatkan rujukan kepada input yang berada di dalam blok #parent:

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

Seperti yang anda lihat, kami mendapat input kami dengan pemilih #parent input. Sebenarnya, pemilih CSS ini merangkumi semua input yang berada dalam #parent.

Katakan, sebagai contoh, kami mempunyai dua input seperti ini:

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

Kemudian, jika anda menulis pemilih #parent input dalam kod CSS, ia akan menjejaskan kedua-dua input kami:

css#parent input {
  color: red;
}

Walau bagaimanapun, kaedah querySelector tidak berfungsi seperti itu. Ia sentiasa mendapatkan hanya satu elemen - yang pertama, yang sepadan dengan pemilih yang ditentukan. Mari lihat contoh. Katakan kami mempunyai input dengan kelas elem:

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

Mari dapatkan input pertama daripada ini:

javascriptlet elem = document.querySelector('.elem');
console.log(elem); // di sini akan menjadi input pertama
Задание 1

Diberi HTML berikut:

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

Dapatkan rujukan kepada perenggan pertama dari div dengan id sama dengan block.

Задание 2

Diberi HTML berikut:

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

Dapatkan rujukan kepada perenggan pertama dari div dengan kelas block.

Задание 3

Diberi HTML berikut:

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

Dapatkan rujukan kepada perenggan pertama dengan kelas www.