Budowanie jQuery - jak najmniejsza wersja

0

Witam,

Potrzebuję zbudować jQuery, aby było troche ajax + css i jak najmniej ważyło. Pobrałem z git to co trzeba i wpisuje w konsoli np.

# grunt custom:-ajax
Running "custom:-ajax" (custom) task
Creating custom build...

Running "build:all:*:-ajax" (build) task
Excluding ajax             (src/ajax.js)                 
Excluding ajax/script      (src/ajax/script.js)          
Excluding ajax/jsonp       (src/ajax/jsonp.js)           
Excluding ajax/xhr         (src/ajax/xhr.js)             
File 'dist/jquery.js' created.

Running "uglify:all" (uglify) task
Source Map "dist/jquery.min.map" created.
File "dist/jquery.min.js" created.
Uncompressed size: 210363 bytes.
Compressed size: 16735 bytes gzipped (73202 bytes minified).

Running "dist" task



Done, without errors.

Niestety nawet wersja spakowana(16735 bytes) jest zbyt duża. Przecież napisanie obsługi połączeń asynchronicznych nie może aż tyle kodu zawierać.
Coś źle robie? Może prototype będzie lżejsze?

0

Z logów, które przestawiłeś wynika, że zbudowałeś dystrybucję ze wszystkim PRÓCZ ajax.

0
Rev napisał(a):

Z logów, które przestawiłeś wynika, że zbudowałeś dystrybucję ze wszystkim PRÓCZ ajax.

ale gafa......

0

Niestety mam problem ze zmniejszeniem jquery. Maksymalna wielkość jaka może być to 15kB, najlepiej jakby było 10kB(wersja min przejechana gzipem).
Funkcje jakie wykorzystuje to

$... addClass, removeClass, show, hide, first, parent, children, append, tworzenie(np. $("</td>") ), index i podstawy ajax(tylko pobranie pliku z danymi).

Skrypt który "buduje" jquery nie jest dobrze opisany:

grunt custom:-???

mam wpisać elementy które nie chcę? A skąd mam wiedzieć czego nie chce? Wiem co chcę :(
Jak to ugryść?

0

Problem w tym, że te funkcje będą zależne od paru innych. Więc w efekcie wciąż to będzie trochę ważyć - nie wiem czy uda Ci się zamknąć w tych 15KB.
Sam silnik wybierający elementy (Sizzle) waży ok 11KB po spakowaniu. Jeżeli w projekcie możesz używać document.querySelectorAll (czyli celujesz w IE>8) to jQuery jest Ci zbędne moim zdaniem - wszystko możesz sam napisać w parudziesięciu linijkach.

1 użytkowników online, w tym zalogowanych: 0, gości: 1