# 15: Ulančavanje - CSS-trikovi

Anonim

Već smo nekoliko puta razgovarali o malim dodirima u jQuery API-ju koji su zaista prilično lijepi. Sve je dobro promišljeno i dorađeno. Lanciranje definitivno spada u tu kategoriju. Jednom kad ga počnete koristiti i shvatite, čini se krajnje prirodnim, kao da ne bi trebalo biti drugog načina.

Glavna ideja je da koristite više metoda zaredom na jednoj zbirci elemenata.

Na primjer, recimo da nakon što kliknem gumb želim promijeniti klasu, kao i neki tekst. Ali gumb ima neki HTML.

 Open 

Pomoću jQueryja možemo cijelu seriju akcija "povezati u lance".

$(".button") .removeClass("open") .addClass("closed") .find(".text") .text("Closed");

To je moguće jer većina metoda jQueryja, dok se koriste kao postavljači, vraćaju skup elemenata baš kao onaj na koji je metoda pozvana. Ponekad je taj skup potpuno isti, kao što je slučaj sa removeClassi addClassovdje, a ponekad je taj skup promijenjen kao što je to slučaj ovdje find.

U primjeru s kojim smo surađivali u videu, razgovarali smo i o tome .end()koji "podupire" jednu razinu na lancu.

$(".button") .removeClass("open") // .button .addClass("closed") // .button .find(".text") // .button .text .text("Closed") // .button .text .end(); // .button .data("thing"); // GETTER on .button

Možda to bolje objašnjava. Kad se skup elemenata promijeni, uvukao sam prvi redak i primijetio promjenu u komentaru. Onda kad .end()se vratimo nazad na jednu razinu. To djeluje bez obzira na to koliko puta promijenite odabir. Sve završava kada koristite metodu koja vraća nešto drugo osim skupa elemenata.