Heim > Web-Frontend > js-Tutorial > Beherrschen von querySelector und querySelectorAll in JavaScript

Beherrschen von querySelector und querySelectorAll in JavaScript

DDD
Freigeben: 2025-01-01 07:21:09
Original
1019 Leute haben es durchsucht

Mastering querySelector and querySelectorAll in JavaScript

querySelector und querySelectorAll in JavaScript

Die Methoden querySelector und querySelectorAll sind leistungsstarke Werkzeuge in JavaScript zum Auswählen von Elementen im DOM. Sie ermöglichen Entwicklern die Verwendung von CSS-Selektoren zum Identifizieren und Bearbeiten von HTML-Elementen.


1. querySelector

Die querySelector-Methode wählt das erste Element aus, das dem angegebenen CSS-Selektor entspricht.

Syntax:

document.querySelector(selector);
Nach dem Login kopieren
Nach dem Login kopieren
  • Selektor: Eine Zeichenfolge, die einen CSS-Selektor darstellt (z. B. „#id“, „.class“, „tag“).

Beispiel:

<div>





<pre class="brush:php;toolbar:false">const firstText = document.querySelector(".text");
console.log(firstText.textContent); // Output: First paragraph
Nach dem Login kopieren
Nach dem Login kopieren

2. querySelectorAll

Die Methode querySelectorAll wählt alle Elemente aus, die dem angegebenen CSS-Selektor entsprechen, und gibt sie als NodeList zurück.

Syntax:

document.querySelectorAll(selector);
Nach dem Login kopieren
Nach dem Login kopieren
  • Selektor: Eine Zeichenfolge, die einen CSS-Selektor darstellt.

Beispiel:

const allTexts = document.querySelectorAll(".text");
allTexts.forEach((text) => console.log(text.textContent));
// Output:
// First paragraph
// Second paragraph
Nach dem Login kopieren
Nach dem Login kopieren

Zugriff auf Elemente in NodeList:

const secondText = allTexts[1];
console.log(secondText.textContent); // Output: Second paragraph
Nach dem Login kopieren
Nach dem Login kopieren

3. Unterschiede zwischen querySelector und querySelectorAll

Funktion querySelector querySelectorAll
Feature querySelector querySelectorAll
Result First matching element All matching elements
Return Type Single DOM element NodeList (array-like structure)
Iteration Not iterable Iterable (e.g., using forEach)
Use Case When one element is needed When multiple elements are needed
Ergebnis Erstes passendes Element Alle passenden Elemente Rückgabetyp Einzelnes DOM-Element NodeList (Array-ähnliche Struktur) Iteration Nicht iterierbar Iterierbar (z. B. mit forEach) Anwendungsfall Wenn ein Element benötigt wird Wenn mehrere Elemente benötigt werden

4. Selektoren kombinieren

Sie können CSS-Selektoren für spezifischere Abfragen kombinieren.

Beispiel:

document.querySelector(selector);
Nach dem Login kopieren
Nach dem Login kopieren

5. Häufige Anwendungsfälle

Auswahl nach ID:

<div>





<pre class="brush:php;toolbar:false">const firstText = document.querySelector(".text");
console.log(firstText.textContent); // Output: First paragraph
Nach dem Login kopieren
Nach dem Login kopieren

Auswahl nach Klasse:

document.querySelectorAll(selector);
Nach dem Login kopieren
Nach dem Login kopieren

Auswahl nach Tag-Namen:

const allTexts = document.querySelectorAll(".text");
allTexts.forEach((text) => console.log(text.textContent));
// Output:
// First paragraph
// Second paragraph
Nach dem Login kopieren
Nach dem Login kopieren

Attributselektoren:

const secondText = allTexts[1];
console.log(secondText.textContent); // Output: Second paragraph
Nach dem Login kopieren
Nach dem Login kopieren

N-te untergeordnete Selektoren:

const containerParagraph = document.querySelector("#container .text");
console.log(containerParagraph.textContent); // Output: First paragraph
Nach dem Login kopieren

6. Iterieren über Elemente von querySelectorAll

Da querySelectorAll eine NodeList zurückgibt, können Sie diese mithilfe von forEach, for...of oder Indexierung durchlaufen.

Beispiel:

const header = document.querySelector("#header");
Nach dem Login kopieren

7. Live-Sammlung vs. statische Sammlung

  • querySelectorAll gibt eine statische NodeList zurück, was bedeutet, dass sie nicht aktualisiert wird, wenn sich das DOM ändert.
  • Verwenden Sie getElementsByClassName oder getElementsByTagName für eine Live-Sammlung.

Beispiel:

const buttons = document.querySelectorAll(".button");
Nach dem Login kopieren

8. Fehlerbehandlung

Wenn keine passenden Elemente gefunden werden:

  • querySelector: Gibt null zurück.
  • querySelectorAll: Gibt eine leere NodeList zurück.

Beispiel:

const paragraphs = document.querySelectorAll("p");
Nach dem Login kopieren

9. Zusammenfassung

  • Verwenden Sie querySelector, um ein einzelnes Element auszuwählen, und querySelectorAll für mehrere Elemente.
  • Beide Methoden unterstützen leistungsstarke CSS-Selektoren für präzises Targeting.
  • querySelectorAll gibt eine statische NodeList zurück, die einfach iteriert werden kann.
  • Sie sind vielseitige Werkzeuge für die moderne DOM-Manipulation und werden häufig älteren Methoden wie getElementById oder getElementsByClassName vorgezogen.

Wenn Sie diese Methoden beherrschen, wird Ihr JavaScript-Code sauberer und effizienter!

Hallo, ich bin Abhay Singh Kathayat!
Ich bin ein Full-Stack-Entwickler mit Fachwissen sowohl in Front-End- als auch in Back-End-Technologien. Ich arbeite mit einer Vielzahl von Programmiersprachen und Frameworks, um effiziente, skalierbare und benutzerfreundliche Anwendungen zu erstellen.
Sie können mich gerne unter meiner geschäftlichen E-Mail-Adresse erreichen: kaashshorts28@gmail.com.

Das obige ist der detaillierte Inhalt vonBeherrschen von querySelector und querySelectorAll in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage