Ce trebuie să știți despre jQuery 1.3

Comunitatea de dezvoltare web a devenit intens entuziasmată pe 14 ianuarie 2009 când jQuery versiunea 1.3.0 a fost lansată oficial. jQuery 1.3 aduce îmbunătățiri semnificative, mai ales când vine vorba de viteză. În plus, dezvoltatorii au reușit să păstreze jQuery la fel de mic ca vreodată, adăugând în același timp câteva caracteristici extraordinare și adesea solicitate. Astăzi, vom avea o privire în profunzime asupra noilor caracteristici și cum puteți stoarce la maximum din ea.

Noțiuni introductive și actualizarea

Dacă sunteți nou în jQuery și trebuie să descărcați cea mai recentă versiune, vizitați pagina de pornire jQuery și faceți clic pe link-ul de descărcare pentru a începe. Dacă actualizați o versiune anterioară, veți fi bucuroși să rețineți că API a rămas consistent și compatibil cu versiunile mai vechi. Pentru a face upgrade, pur și simplu actualizați versiunea jQuery pe serverul dvs. și legați-l la acesta properl.y Mai târziu, în acest articol vom discuta orice schimbări care ar putea cauza probleme cu orice cod curent aveți.

Sizzle CSS Selector Engine

Dezvoltatorii jQuery au făcut un pas gigantic cu motorul lor selector CSS și au început un proiect independent, cunoscut sub numele de "Sizzle". Sizzle este acum motorul CSS selector pentru jQuery și este condus de Fundația Dojo. Sizzle este deja în căutarea promițătoare pentru mai multe cadre decât jQuery, deoarece este deschisă și disponibilă pentru orice dezvoltatori care doresc să-l folosească în proiectele lor. Puteți afla mai multe despre sizzle pe pagina de lansare jQuery și pe pagina de pornire a lui Sizzle. jQuery colaborează în prezent cu Prototype, Dojo, Yahoo UI, MochiKit, TinyMCE și multe alte biblioteci pentru a face acest motor chiar mai puternic.

Performanță mult mai rapidă a selectorului

Odata cu lansarea unui nou motor, performanta este mult mai rapida; în unele cazuri peste 400% mai rapid, în funcție de browserul utilizat. jQuery a publicat rezultatele testelor utilizând selectorii pe care oamenii le utilizează (pe care le-am cartografiat în secțiunea următoare). Vedeți graficul de mai jos pentru noile rezultate ale performanței selectorului.

Selectorii obișnuiți și viteza lor

După cum sa menționat mai sus, testele de performanță ale selectorului s-au bazat pe selectorii pe care oamenii l-au folosit efectiv. Am găsit aceste date ca fiind interesante și le puteți găsi aici. Totuși, este într-un format de text și îmi plac graficele și graficele. Unul dintre lucrurile care mi-au rămas în evidență a fost modul în care un astfel de procent mic de oameni profita de selectorul vizibil. Mai jos veți găsi selectorii pe care dezvoltatorii le folosesc cel mai frecvent în scripturile jQuery de astăzi.

jQuery API de Remy Sharp

Un alt lucru foarte interesant despre lansarea jQuery 1.3 este lansarea unui nou jQuery API Browser creat de Remy Sharp. Puteți accesa prin intermediul internetului pentru a căuta orice metodă sau funcție jQuery dorită. Chiar mai bine, este disponibil pentru descărcare ca browser offline utilizând programul de instalare Adobe Air Flash. Practic, API-ul jQuery face accesibile orice informații sau documentație cu câteva clicuri, cu sau fără conexiune la internet.

De mai sus:browser-ul offline în desfășurare.

Nicio vizionare a browserului!

Până în prezent, jQuery a realizat un proces cunoscut sub numele de "sniffing" de browser pentru a determina acțiunea pe care ar trebui să o facă codul. Dezavantajul acestei situații presupune existența unui bug sau a unei caracteristici. jQuery depășește acest lucru utilizând un singur obiect cunoscut sub numele de jQuery.support și nu mai oferă un singur agent de utilizator pentru cântăreți. John explică modul în care jQuery.support funcționează cel mai bine pe sine:

Utilizăm o tehnică numită detectare a funcțiilor în care simulează o anumită caracteristică sau un bug pentru a verifica existența acesteia. Am încapsulat toate verificările pe care le folosim în jQuery într-un singur obiect: jQuery.support. Mai multe informații despre aceasta, detectarea funcțiilor și ce oferă această funcție pot fi găsite în documentația jQuery.support.

Deci, ce înseamnă asta în cele din urmă? Aceasta înseamnă că pluginurile jQuery și jQuery vor deveni mult mai fiabile în timp, deoarece nu mai trebuie să depindem de sniffingul browserului pentru a determina un anumit agent de browser / utilizator. John mai notează că jQuery.browser rămâne în jQuery și va rămâne o perioadă destul de lungă. Este depreciat și sunteți încurajat să utilizați funcția de detectare a funcțiilor.

Noi evenimente live și delegație de evenimente

O caracteristică interesantă și cu siguranță utilă lansată cu 1.3 este noua caracteristică "live events". Delegarea evenimentelor live înseamnă că, dacă un element are atașat un handler de evenimente, orice elemente suplimentare create vor avea de asemenea atașat un handler de evenimente. Luați codul de mai jos găsit în documentația live ().

 $ ("p") live ("click", funcția () $ (this) .after ("

Un alt paragraf!

"););

La prima vedere s-ar putea să vă întrebați: "De ce nu aș atașa un handler de evenimente pentru clicuri la eticheta p?". Cu o inspecție suplimentară, ne dăm seama că toate elementele p introduse după paragraful curent vor avea de asemenea atașat mânerul evenimentului, oferind efectul nelimitat de utilizare. Puteți să citiți mai multe despre evenimentele live și să verificați demo-ul la documentele jQuery.

Prezentarea celui mai apropiat ()

Piling pe o altă caracteristică mare de 1.3, dezvoltatorii ne-au dat cea mai apropiată (), ceea ce face exact ceea ce credeți că ar face. Funcția cea mai apropiată () poate fi utilizată pentru a găsi cel mai apropiat element cu un anumit set de parametri. Din nou, să aruncăm o privire la demo.

 $ (document) .bind ("click", funcția (e) $ (e.target) .closest ("li") toggleClass ("highlight");

În codul de mai sus, legăm o funcție de clic pe documentul curent și adăugăm / eliminăm evidențiarea clasei la cel mai apropiat element li după un clic de utilizator. Dacă nu se găsește niciun element, acesta continuă să traverseze documentul până când găsește o potrivire. Dacă nu se găsește nici o potrivire, nimic nu este executat. Aflați mai multe despre traversarea folosind cea mai apropiată ().

Manipularea mai rapidă a DOM și inserarea HTML

jQuery a văzut o îmbunătățire semnificativă a vitezei atunci când vine vorba de manipularea DOM și de introducerea / crearea de noi elemente HTML. Acest lucru se va aplica la utilizarea metodelor precum .insertBefore () și append () etc. Pentru a obține o idee mai bună despre modificările de viteză, vom examina un alt grafic super uimitor.

Ascundeți mai rapid / afișați rezultatele

Are sens că dezvoltatorii au avut timp să se concentreze asupra creșterii vitezei efectelor de ascundere / spectacol. Acestea sunt două dintre cele mai frecvent utilizate efecte jQuery. Rezultatele de viteză văzute mai jos.

Rezultate mai rapide ()

Dacă te afli folosind offset () frecvent în scripturile tale jQuery, vei fi fericit să auzi că viteza offsetului sa îmbunătățit și ea foarte mult. În cazul în care v-ați întrebat, offset () primește pur și simplu offsetul curent al elementului corespunzător față de document. Rezultatele prezentate mai jos.

Alte caracteristici merită notate

  • Metoda gata () nu mai așteaptă încărcarea CSS. Scriptul trebuie plasat după fișierele css.
  • Marcajul "@" din [@attr] a fost eliminat în 1.3 și a fost depreciat cu mult timp înainte. Pentru a face upgrade, pur și simplu trebuie să eliminați caracterul @.
  • John recomandă să faci tot ce este mai bun pentru a vă asigura că paginile dvs. se execută în modul standard, în cazul în care rulează în mod quirks aveți riscul de a întâlni unele bug-uri, în special în Safari.
  • Safari 2 nu mai este suportat.
  • Direct din documentație: "Din jQuery 1.3, dacă specificați o durată de animație de 0, atunci animația va seta în mod sincron elementul la starea finală (aceasta este diferită de versiunile vechi, unde ar exista o întârziere asincronă scurtă înainte de ar fi stabilită starea finală). "
  • Toggle () acceptă acum o valoare booleană.
  • Din documentație: "Expresiile complexe: nu () sunt acum valide. De exemplu:: nu (a, b) și: nu (div a)."

Resurse aditionale

  • jQuery 1.3 Release Documentation

    Prima oprire pentru a afla totul și tot ce a fost inclus în această versiune. Și dacă mai aveți mai multe grafice și grafice, le puteți găsi și acolo.

    Vizitati site-ul

  • jQuery API

    Nu uitați să verificați noul browser jQuery API / offline, acesta vă va economisi o tona de timp și întrebări când rămâneți blocat.

    Vizitati site-ul

  • jQuery pentru seriile video pentru începători absolut

    Jeffrey a făcut o serie excelentă de 15 părți pe blogul ThemeForest care acoperă o sumă vastă de sfaturi, trucuri și tehnici de jQuery. Nu ratați!

    Vizitati site-ul

Cod