jQuery

jQuery 1.5

Team jQuery wydał nową dużą wersje bblioteki. Tym razem mamy do pobrania jQuery 1.5 A co w nim takiego nowego?

Przepisany od nowa $.ajax

Biblioteka do obsługi AJAXu została całkowicie przepisana. Pierwszą rzeczą która się rzuca w oczy jest zmiana definicji. Od teraz wygląda ona następująco:

$.ajax(url, [settings]);

Według mnie jest to uproszczenie bardzo pożądane. Szczególnie początkującym będzie znacznie łatwiej zrozumieć tak poteżną bibliotekę do obsługi AJAXa. Kolejną zmianą jest enkapsulacja XHR do obiektu jqXHR. Sam obiekt jqXHR jest instancją kolejnej nowości w jQuery 1.5 – Deferred Object. Ten nowy typ obiektu ma tą właściwość że może do dowolnego eventu podpiąć nie jeden callback ale kilka. Na dodatek callbaki są ustawiane w kolejkę i są według tej kolejki uruchamiane. Jednak to nie wszystko :) Kolejne callbacki można dodawać w trakcie lotu :) nawet po wywołaniu eventu. Dodany callback w locie zostaje dodany do kolejki i zostanie wykonany jak tylko kolejka się opróżni.

var jqXHR = $.ajax(url, [settings]);
// kod aplikacji
jqXHR.error(function() { alert('Cos poszlo nie tak') });

Rozszerzono także API, dzięki ktoremu programiści mogą pisać pluginy do biblioteki jQuery.ajax wprowadzają now typy danych, filtry czy transportery.

jQuery.sub()

Nie podoba ci się implementacja jakiejś metody w jQuery? Teraz przy pomocy jQuery.sub() możesz spokojnie nadpisać co tylko sobie chcesz w całej bibliotece jQuery, a jednocześnie zachowując pewność że nie zepsujesz działania żadnego pluginu.

Wydajność

W nowej wersji pod młotek optymalizacji poszły takie metody jak children(), prev() i next(). Ponieważ są to chyba najczęściej używane metody w aplikacji opartych na jQuery więc zysk dla prawdziwych aplikacji będzie naprawdę spory.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>