Umgang mit CSS mit jQuery

Mit jQuery können wir viele Dinge auf der Ebene der Benutzerinteraktion erreichen, einschließlich der Manipulation des DOM-Baums . Eines der Dinge, die uns jedoch möglicherweise nicht in den Sinn kommen, ist die Manipulation von CSS .

Durch die Manipulation von CSS können wir Änderungen an den Elementen, die wir auf dem Bildschirm sehen, auf sehr natürliche und flüssige Weise erreichen, ohne auf komplexe Funktionen in reinem Javascript zurückgreifen zu müssen, wie wir es vor einigen Jahren getan haben.

Das DOM und seine Bedeutung

Das DOM ist die Art und Weise, wie unser HTML- Dokument organisiert ist. Es ermöglicht uns, eine vorhersehbare und hierarchische Struktur für das zu erstellen, was wir auf dem Bildschirm anzeigen möchten. Dies ist sehr wichtig, da der Browser die Dokumente auf diese Weise interpretiert. Es gibt jedoch noch einen weiteren Aspekt, den wir zu unseren Gunsten nutzen können. Dies ist, um in der Lage zu sein, die Elemente zu lokalisieren, um auf sie einzugreifen.

Wenn wir also eine Änderung an einem bestimmten Element vornehmen müssen, können wir dank des DOM verschiedene Methoden verwenden, um es zu lokalisieren und damit seinen Inhalt, seinen Stil oder sogar ihn in Echtzeit aus dem Dokument zu entfernen.

Dies ist sehr praktisch, wenn ein Element hervorgehoben werden muss, wenn eine Aktion im Dokument ausgeführt wird oder wenn eine Antwort eingeht und die Seite nicht geändert oder vollständig aktualisiert werden muss.

Die Methode addClass ()

Eine der Best Practices beim Erstellen von CSS- Stilen ist die Verwendung von Klassen. Damit können wir Aspekte erstellen, die wir dann unabhängig voneinander auf verschiedene Elemente anwenden können, ohne den Code immer wieder neu schreiben zu müssen.

Klassenattribut
Damit ein Element diese Stile annimmt, setzen wir einfach den Namen der entsprechenden Klasse in ihr Attribut class = “” und wenn der darin geschriebene Stil für das Element geeignet ist, wird er ihn widerspiegeln.

Einschränkung
Alles hört sich sehr gut an, aber es gibt eine Einschränkung, der Stil wird geladen, wenn die Seite angehoben wird, und wenn wir einen neuen Stil einfügen müssen, müsste er normalerweise die Seite neu laden, was zu einer Unterbrechung der Navigation für den Benutzer führt.

Mit jQuery können wir diese Grenzen überspringen, indem wir die Möglichkeit haben, diese Klassen in Echtzeit in das Dokument einzubinden, ohne die gesamte Seite neu laden zu müssen. Dazu verwenden wir einfach die addClass () -Methode und übergeben ihr den Namen der CSS- Klasse, die wir der hinzufügen möchten Moment

Lassen Sie uns Schritt für Schritt ein kleines praktisches Beispiel ansehen und dann den vollständigen Code der beschriebenen Sache sehen:

– En primer lugar creamos nuestro archivo llamado agregar-clases.html y vamos a incluir la librería de jQuery , para efectos prácticos hacemos el llamado directo desde la CDN adecuada, esto requiere conexión a Internet, sin embargo podemos salvar el archivo y servirlo de forma local. 1 – Zuerst erstellen wir unsere Datei mit dem Namen add-classes.html und fügen die jQuery- Bibliothek hinzu. Aus praktischen Gründen führen wir den direkten Aufruf vom entsprechenden CDN aus . Dies erfordert eine Internetverbindung. Wir können die Datei jedoch speichern und verwenden. lokale Form.

See also  Freigeben von Dateien aus dem Windows 10-Datei-Explorer

– Luego vamos a crear nuestras clases CSS , para que podamos ver de mejor forma el cambio hemos creado dos clases, cada una le cambia el color al fondo del elemento al que se aplique, y cada clase tendrá un color diferente. 2 – Dann erstellen wir unsere CSS- Klassen, damit wir die Änderung, die wir in zwei Klassen vorgenommen haben, besser sehen können. Jede Klasse ändert die Farbe auf den Hintergrund des Elements, auf das sie angewendet wird, und jede Klasse hat eine andere Farbe.

– En el body de nuestro documento creamos dos <div> ya cada uno le asignamos un ID con el cual podremos identificarlos dentro del DOM fácilmente con los selectores de jQuery . 3 – Im Hauptteil unseres Dokuments erstellen wir zwei <div> und weisen jedem eine ID zu, mit der wir sie im DOM mit den jQuery- Selektoren leicht identifizieren können.

– Luego creamos un elemento <button> al cual en el evento onclick le decimos que llame a una función Javascript . 4 – Dann erstellen wir ein <button> -Element, das im onclick -Ereignis eine Javascript- Funktion aufruft .

– Finalmente construimos nuestra función Javascript , esta simplemente va a llamar a cada elemento por su selector y con el método addClass() le va a añadir una clase de las que creamos inicialmente, al hacer esto inmediatamente veremos el cambio. 5 – Schließlich bauen wir unsere Javascript- Funktion auf, dies ruft einfach jedes Element über seinen Selektor auf und fügt mit der addClass () -Methode eine Klasse hinzu, die wir ursprünglich erstellt haben. Auf diese Weise sehen wir die Änderung sofort.

Da wir beschrieben haben, was wir tun sollen, werden wir den Code so sehen, wie er war:

 <! DOCTYPE html> <html lang = "en"> <head> <meta charset = "UTF-8"> <title> Klassen hinzufügen </ title> <script src = "https://code.jquery.com/jquery-2.1.1.min.js"> </ script> <style> .primeraclase {Hintergrundfarbe: grün;} .second class {Hintergrundfarbe: grau;} </ style> </ head> <body> <section> <div id = "element_1"> Unser erster jQuery-CSS-Block </ div> </ br> <div id = "element_2"> Unser zweiter Block für jQuery-CSS </ div> </ section> <p> <button onclick = "Javascript: changeClasses ();"> Klicken Sie hier, um die Klassen zu ändern. </ button> </ p> <script type = "text / javascript"> Funktion changeClasses () { $ ("# element_1"). addClass ("primeraclase"); $ ("# element_2"). addClass ("secondclass"); } </ script> </ body> </ html> 

Wie wir sehen, ist es ganz einfach und wenn wir dies in unserem Browser ausführen, werden wir sehen, wie vor dem Klicken auf die Schaltfläche die Elemente normal sind und nach dem Klicken ihre Farbe ändern und die entsprechenden Klassen hinzugefügt werden. Sehen wir uns das folgende Bild an, auf das wir uns beziehen:

manipulation-css-jquery.jpg
Nachdem wir auf den Button geklickt haben, können wir den Übergang auf unserer Seite sehen:

manipulation-css-jquery2.jpg

Entfernen Sie eine Klasse

Wenn wir eine Klasse hinzufügen können, müssen wir auch in der Lage sein, das Gegenteil von dem zu tun, das sie entfernt. Für diese jQuery wird die removeClass () -Methode bereitgestellt , und sie funktioniert nach einem Prinzip, das dem vorherigen Beispiel sehr ähnlich ist. Wir platzieren einfach ein Element und sagen durch die Methode, die die angegebene Klasse entfernen muss, wenn sie entfernt wurde, geschieht sonst nichts.

See also  Chrome-Fehler Diese Webseite ist nicht verfügbar. ERR CONNECTION CLOSED

Um die Sache ein wenig interessanter zu machen, werden wir die Verwendung einer anderen Methode hinzufügen und es ist die Klassenprüfung, dies ist die hasClass () , mit der wir überprüfen können, ob ein Element eine bestimmte Klasse hat, mit der wir bedingte und tun können verschiedene Experimente, die uns unsere Logik diktiert.

Ein praktisches Beispiel

Dazu erstellen wir eine kleine Seite, in der wir mehrere Funktionen haben. Eine Funktion überprüft, ob das Element eine bestimmte Klasse hat. Wenn dies der Fall ist, wird es entfernt. Wenn die Antwort jedoch negativ ist, werden wir es hinzufügen.

Dies gibt uns die Möglichkeit, ein bisschen dynamisch mit den Stilen zu spielen, da wir in Echtzeit sehen können, ob wir bestimmte Werte hinzufügen oder entfernen.

– Tomando como base el ejemplo anterior solamente nos vamos a concentrar en la parte donde hemos escrito la función Javascript . 1 – Anhand des vorherigen Beispiels konzentrieren wir uns nur auf den Teil, in dem wir die Javascript- Funktion geschrieben haben.

– Dentro de la función vamos a crear dos condicionales, en el primero trabajaremos con el primer elemento, en primer lugar vamos a preguntar con un bloque condicional if() si tiene la clase llamada primeraclase , en caso de ser positiva la respuesta aplicaremos el método de remover clase, sin embargo de no tener la clase vamos a añadírsela, esto nos dará un efecto de switch . 2 – In der Funktion werden wir zwei Bedingungen erstellen. In der ersten werden wir mit dem ersten Element arbeiten. Zuerst werden wir mit einem bedingten Block fragen, ob () ob es die Klasse firstracing hat. Im Falle, dass sie positiv ist, wird die Antwort angewendet Methode zum Entfernen von Klassen. Wenn wir jedoch nicht über die Klasse verfügen, die wir hinzufügen möchten, erhalten wir einen Wechseleffekt .

– Repetimos el paso anterior para el segundo elemento y así logramos que se comporte de la misma manera. 3 – Wir wiederholen den vorherigen Schritt für das zweite Element und können uns daher genauso verhalten.

Nachfolgend sehen wir den neuen Code, den wir erstellt haben:

 <! DOCTYPE html> <html lang = "en"> <head> <meta charset = "UTF-8"> <title> Klassen hinzufügen </ title> <script src = "https://code.jquery.com/jquery-2.1.1.min.js"> </ script> <style> .primeraclase {Hintergrundfarbe: grün;} .second class {Hintergrundfarbe: grau;} </ style> </ head> <body> <section> <div id = "element_1"> Unser erster jQuery-CSS-Block </ div> </ br> <div id = "element_2"> Unser zweiter Block für jQuery-CSS </ div> </ section> <p> <button onclick = "Javascript: changeClasses ();"> Klicken Sie hier, um die Klassen zu ändern. </ button> </ p> <script type = "text / javascript"> Funktion changeClasses () { if ($ ("# element_1"). hasClass ("primeraclase")) { $ ("# element_1"). removeClass ("primeraclase"); } else { $ ("# element_1"). addClass ("primeraclase"); } if ($ ("# element_2"). hasClass ("segundaclase")) { $ ("# element_2"). removeClass ("secondclass"); } else { $ ("# element_2"). addClass ("secondclass"); } } </ script> </ body> </ html> 

Nun wollen wir sehen, wie die Ausführung unseres Programms ist. In diesem ersten Bild sehen wir, wie unser HTML- Dokument im Ausgangszustand aussieht. Wir haben die Chrome- Konsole integriert, damit wir feststellen können, wie sich die Elemente ändern:

See also  Überwachen und Anzeigen des Linux-Speicherplatzes mit Agedu

manipulation-css-jquery3.jpg
Nun wollen wir sehen, was passiert, wenn wir auf die Schaltfläche klicken und der Übergang ausgeführt wird:

manipulation-css-jquery4.jpg
Auf den ersten Blick scheint dieses Dokument genauso zu funktionieren wie das erste, das wir in diesem Tutorial gemacht haben. Wenn wir jedoch erneut klicken, werden wir sehen, wie die removeClass () -Methode funktioniert .

Wir haben auch überprüft, wie die hasClass () -Methode funktioniert. Vielleicht macht sie nichts, was der Benutzer sieht, aber es gibt uns die Möglichkeit, Bedingungen in unserem HTML auszuführen.

toggleClass ()

Es gibt etwas, das es uns ermöglicht, jQuery zu verwenden und dies zwischen Klassen zu wechseln. Dazu verwenden wir die Methode toggleClass () , mit der wir unserem Element angeben können, dass es beim Auslösen eines Ereignisses eine Klasse benötigt, wenn die andere der Liste bereits angewendet wurde.

Dienstprogramm
Dies ist sehr nützlich, wenn wir an Zustandsänderungen arbeiten möchten. Es ist eine Art Abkürzung, keine bedingte Struktur mit der Methode hasClass () schreiben zu müssen . Die Anwendung ist sehr ähnlich zu den Methoden, die wir bisher gesehen haben, der einzige Unterschied ist, dass wir anstelle einer Klasse zwei durch ein Leerzeichen getrennte übergeben.

Mal sehen, wie wir nur die Javascript- Funktion unseres Testdokuments ändern, um diese neue Methode zu integrieren:

– Vamos a añadir una clase inicial a nuestros elementos, de esta forma tendremos un punto de partida para los cambios. 1 – Wir werden unseren Elementen eine erste Klasse hinzufügen, auf diese Weise werden wir einen Ausgangspunkt für die Änderungen haben.

– Luego dentro de nuestra función Javascript simplemente aplicaremos el método toggleClass() a cada uno de los elementos mediante su selector. 2 – Dann wenden wir in unserer Javascript- Funktion einfach die toggleClass () -Methode über ihren Selektor auf jedes der Elemente an.

Mal sehen, wie unser Code mit den vorgenommenen Änderungen ist:

 <! DOCTYPE html> <html lang = "en"> <head> <meta charset = "UTF-8"> <title> Klassen hinzufügen </ title> <script src = "https://code.jquery.com/jquery-2.1.1.min.js"> </ script> <style> .claseinicial {Hintergrundfarbe: blau;} .primeraclase {Hintergrundfarbe: grün;} .second class {Hintergrundfarbe: grau;} </ style> </ head> <body> <section> <div id = "element_1" class = "initialclass"> Unser erster jQuery-CSS-Block </ div> </ br> <div id = "element_2" class = "initialclass"> Unser zweiter Block für jQuery-CSS </ div> </ section> <p> <button onclick = "Javascript: changeClasses ();"> Klicken Sie hier, um die Klassen zu ändern. </ button> </ p> <script type = "text / javascript"> Funktion changeClasses () { $ ("# element_1"). toggleClass ("initial class initialraclase"); $ ("# element_2"). toggleClass ("initialclass secondclass"); } </ script> </ body> </ html> 

Nun wollen wir sehen, was passiert, wenn wir das Dokument zum ersten Mal laden:

manipulation-css-jquery5.jpg

Nun wollen wir sehen, was passiert, wenn wir erneut auf die Schaltfläche klicken:

manipulation-css-jquery6.jpg
Wenn wir weiter auf die Schaltfläche klicken, wechseln sich die Klassen ohne Einschränkungen ab.

Nachdem wir dieses Tutorial abgeschlossen haben, haben wir gelernt, wie wir das CSS direkt mit jQuery manipulieren können. Auf diese Weise können wir bessere Ideen haben, um unsere Benutzeroberflächen funktionsreicher zu gestalten.

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *