Heim > Web-Frontend > js-Tutorial > CSSQuery (): Fragen Sie das DOM mit CSS -Selektoren ab

CSSQuery (): Fragen Sie das DOM mit CSS -Selektoren ab

Lisa Kudrow
Freigeben: 2025-03-07 00:29:10
Original
936 Leute haben es durchsucht

cssQuery(): query the DOM with CSS selectors

(aus Planet Web 2.0) CSSQuery () ist eine neue JavaScript-Bibliothek, die von Dean Edwards (einem bekannten Entwickler von IE7-Skripten) entwickelt wurde. DOM ist eine leistungsstarke und effiziente API zum Lesen, Schreiben und Ändern von HTML- und XML -Dokumenten. In Verbindung mit JavaScript ist dies die Grundlage für den DHTML -Effekt. Manchmal kann es jedoch viel Code erfordern. Betrachten Sie dieses kleine Ausschnitt, das aus dem Tischsortierungsskript stammt, das wir auf SitePoint verwenden:

function sortables_init() {
    // 查找所有具有 sortable 类的表格并使其可排序
    if (!document.getElementsByTagName) return;
    tbls = document.getElementsByTagName("table");
    for (ti=0; ti < tbls.length; ti++) {
        thistbl = tbls[ti];
        ts_makesortable(thistbl);
    }
}
Nach dem Login kopieren

Dieser Code ist gut, aber er ruft tatsächlich nur die TS_Makesortable -Funktion auf jedes Tabellenelement auf, das die sortierbare Klasse anwendet. Hier ist der Code mit CSSQuery ():

function sortables_init() {
    // 查找所有具有 sortable 类的表格并使其可排序
    tbls = cssQuery("table.sortable");
    for (ti=0; ti < tbls.length; ti++) {
        ts_makesortable(tbls[ti]);
    }
}
Nach dem Login kopieren

In typischen DHTML -Skripten sind die resultierenden Codeeinsparungen erstaunlich. Natürlich werden Sie eine gewisse Leistung opfern, da Ihr CSS -Selektor in reinem JavaScript analysiert und interpretiert werden muss, aber bisher haben nur wenige JavaScript -Anwendungen den Browser überwältigt.

cssquery () unterstützt alle CSS1- und CSS2 -Selektoren sowie viele CSS3 -Selektoren. Dies ist sogar noch besser als die meisten aktuellen Webbrowser - und es ist vollständig in reinem JavaScript geschrieben!

update:

Simon Willison hat im März 2003 GetElementsBySelector () eine ähnliche Bibliothek erstellt. Es unterstützt nicht so viele CSS -Auswahltypen, kann jedoch die meisten Funktionen enthalten, die Sie für Ihren täglichen Gebrauch benötigen. Daher kann es leichter sein.

FAQs über CSS -Abfrage

Was ist CSS -Abfrage und wie funktioniert es?

CSS -Abfrage, auch als CSS -Selektor bezeichnet, ist ein leistungsstarkes Tool in der Webentwicklung zur Auswahl und Manipulation von HTML -Elementen basierend auf der ID, Klasse, Typ, Attribut usw. Es funktioniert, indem ein bestimmter Stil auf Elemente angewendet wird, die dem angegebenen Selektor entsprechen. Auf diese Weise können Entwickler einfach dynamische und interaktive Webseiten erstellen. Die CSS -Abfrage wird in JavaScript für DOM -Operationen häufig verwendet, um Elemente in Testwerkzeugen wie Selen zu finden.

Wie verwendet Sie eine CSS -Abfrage, um Elemente basierend auf Attributen auszuwählen?

Mit

CSS -Abfrage können Sie mithilfe von Quadratklammern [] basierend auf den Attributen des Elements auswählen. Um beispielsweise alle Elemente mit einem bestimmten Attribut auszuwählen, können Sie die Syntax: Element [Attribut] verwenden. Um ein Element mit einem bestimmten Attributwert auszuwählen, können Sie die Syntax: Element [Attribute = "value"] verwenden. Diese Funktion ist besonders nützlich, wenn Sie Elemente mit bestimmten Attributen auf unterschiedliche Weise stylen möchten.

Kann ich mehrere Elemente mit CSS -Abfrage gleichzeitig auswählen?

Ja, CSS -Abfrage ermöglicht es Ihnen, mehrere Elemente gleichzeitig mit einem Komma auszuwählen. Beispielsweise wählt Syntax: H1, H2, H3 {Farbe: Rot} alle H1-, H2- und H3 -Elemente aus und wenden Sie eine rote Farbe auf sie an. Diese Funktion ist nützlich, wenn Sie denselben Stil auf mehrere Elemente anwenden möchten.

Wie verwendet ich CSS -Abfrage, um untergeordnete Elemente auszuwählen?

Mit

CSS -Abfrage können Sie unter Verwendung des & gt unterbrochenen Elemente ausgewählt werden. Zum Beispiel wird Syntax: Div & GT; Dies ist nützlich, wenn Sie den Stil eines untergeordneten Elements vom Stil eines übergeordneten Elements unterscheiden möchten.

Kann ich eine CSS -Abfrage verwenden, um basierend auf dem Status eines Elements auszuwählen?

Ja, CSS-Abfrage ermöglicht es Ihnen, die Pseudoklasse zu verwenden, um basierend auf dem Status eines Elements auszuwählen. Beispielsweise wählt Syntax: A: Hover {Color: Red} sie, wenn sie über alle A -Elemente schweben und eine rote Farbe auf sie anwenden. Diese Funktion ist sehr nützlich, um interaktive Webseiten zu erstellen.

Wie kann ich CSS -Abfrage verwenden, um Geschwisterelemente auszuwählen?

Mit

CSS -Abfrage können Sie mit dem Bediener Geschwisterelemente auswählen. Beispielsweise wählt Syntax: Div P das P -Element unmittelbar nach dem Div -Element aus. Diese Funktion ist nützlich, wenn Sie Elemente basierend auf der Stelle stylen möchten, wo sie sich in einem HTML -Dokument befinden.

Kann ich eine CSS -Abfrage verwenden, um basierend auf dem Element im HTML -Dokument auszuwählen?

Ja, CSS-Abfrage ermöglicht es Ihnen, Pseudoklassen wie: First-Child,: Last-Child und: N-Child (N) zu verwenden, um auszuwählen, anhand derer der Element im HTML-Dokument sich befindet. Beispielsweise wählt Syntax: P: First-Child {Color: Red} das erste P-Element aus und wendet eine rote Farbe darauf an. Diese Funktion ist nützlich, um dynamische und interaktive Webseiten zu erstellen.

Wie verwendet ich die CSS -Abfrage, um basierend auf der Art des Elements auszuwählen?

Mit

CSS -Abfrage können Sie Elementtypen als Selektoren basierend auf dem Elementtyp verwenden. Beispielsweise wählt Syntax: P {Farbe: Rot} alle p -Elemente aus und wenden eine rote Farbe auf sie an. Diese Funktion ist nützlich, wenn Sie alle Elemente eines bestimmten Typs auf die gleiche Weise stylen möchten.

Kann ich eine CSS -Abfrage verwenden, um basierend auf der Klasse oder ID des Elements auszuwählen?

Mit CSS -Abfrage können Sie den Operator basierend auf der Klasse des Elements verwenden und den # Operator basierend auf der ID des Elements auswählen. Beispielsweise wählt Syntax: .Class {Farbe: Red} alle Elemente mit der Klasse "Klasse" aus und wenden Sie eine rote Farbe darauf an. In ähnlicher Weise wählt Syntax: #id {Farbe: Red} das Element mit ID "ID" aus und wenden Sie eine rote Farbe darauf an. Diese Funktion ist nützlich, wenn Sie den Stil eines bestimmten Elements von dem Stil anderer Elemente unterscheiden möchten.

So verwenden Sie eine CSS -Abfrage, um Elemente auszuwählen, die nicht mit einem bestimmten Selektor übereinstimmen?

Mit

CSS-Abfrage können Sie die: nicht () Pseudo-Klasse verwenden, um Elemente auszuwählen, die nicht mit einem bestimmten Selektor übereinstimmen. Zum Beispiel syntax: p: nicht (.class) {color: rot} wählt alle p -Elemente aus, die keine Klasse "Klasse" haben, und wenden Sie eine rote Farbe darauf an. Diese Funktion ist nützlich, wenn Sie alle Elemente mit Ausnahme der Elemente stylen möchten, die einem bestimmten Selektor entsprechen.

Das obige ist der detaillierte Inhalt vonCSSQuery (): Fragen Sie das DOM mit CSS -Selektoren ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage