jQuery protiv svakoga: presedan s 5 preglednik
Srijeda, 17. rujna 2008
Dobar programer nema problema da se presele iz programskog jezika na drugi. Izbor da se usredotočite na određeni jezik, okvir i razvoj okoliša, diktirana je više od dostupnosti vrijeme i vrstu rada koji se odvija. Međutim, važan faktor koji svibanj utjecati na izbor "okvir" kao što je simpatija ili bolesti koje mogu zrele tijekom vremena.
Naime, i ja sam htjela da analiziram neke - ne sve - Javascript okviru raspoloživih danas, jer je "savjetovao" da se brine u prvom redu na jQuery.
Kreatori mootools (jedan od najpopularnijih Javascript okvir) ima na raspolaganju alat za pokretanje test brzine i valjanost od pet poznatih okvira Javascript: Slickspeed. Ovaj test, rezultati ne popusta na sve, važno je kao operativni okvir Javascript klijent-strana, koja je pokrenuti naš preglednik. To je upravo zbog toga da se neki naći Safari brže nego Internet Explorer ili Google krom brže nego Firefox. Međutim, to često ovisi o vrsti stranicu koju gledate. U stvari, svibanj dobro se dogoditi da se pojedine stranice je zapravo više "brzih" kada je prikazan u Safari, ali to ne znači da je "sve stranice će biti brži sa Safari! Naravno, to vrijedi za govor bilo kojeg drugog preglednika.
U presedan
U testove sam provela s Slickspeed sam u usporedbi preglednik dostupan na moj stroj (Utilmate Windows Vista 64bitan - Intel Core 2 Quad 2.4GHz sa 8Gb RAM).
Nažalost, testovi nisu u mogućnosti pokrenuti se s Internet Explorer 7, jer blokiranje automobila, čak i izlazak na ljestvici s rezultatima! Još jednom, čestitam Microsoftu.
Ja crercato identičan održavati status PC tijekom testa, otvaranje preglednika odvojeno i ne šalju bilo kome drugome pokrenut postupak.
Napomena: Ako osjećate kao obavljenih jedan ili više tih testova, možete komentar na ovaj post u slucaju "radoznale" i različite rezultate.

Google krom je zaista brz, sa vrijednošću 68 (prosjek) u test s jQuery. Je sporiji, ali se pojavila stada, bez obzira dolaze iz iste "majke" Mozilla. Ovaj rezultat loše za stado je doista rijedak dobio rezanje socijalne mreže, jer to je društvena mreža Web 2.0 iskorištavaju mnogi Javascript okvir dostupan, kako bi se pružaju plovidbe i interakcije zaista inovativni.
Iznenađenje pobjedio Firefox i Opera ima puno, čak tiče 74 u Dojo! Firefox i Safari, nakon što su svi su podjednako, sa Safari brži u testove s Mootools i jQuery.
Što okvira odabrati?
Ako ne badiamo za testiranje brzine izvršenja i ne brinuti se o veličini u Kbytes u istom okviru, odgovor može biti ", što je za vas" ili, ako želite, "ono što najbolje zna ili je više skladnu sa svojim Stil programiranja. "
Na kraju, ove okvire će izgledati pomalo "sve (vidi korištenje $ za primjer), bez obzira na neke važne i značajne razlike koje se mogu skočiti u očima stručna ili stvarno guraju u određenu biblioteku. U načelu, u stvari, sve što se može postići s jQuery, na primjer, možete učiniti i sa mootools ili prototip! Ako jQuery ima vrlo kompaktan sintakse, kao i sve metode uvijek vratiti jQuery objekt osnovi, stvarajući time nepregledna datoteke u oggetto.metodo().metodo().metodo()... nije rekao da je to na svim košta snaga, posebno za one koji će se analizirati problem!
Knjižnice kao prototype.js grijeh možda u pomanjkanju grafičkih efekata, čak i jednostavan, prisiljavajući programer za provedbu spinoff kao scriptaculous.js, teških i udaljen iz biblioteke prvi izbor.
Primjer
Samo ovaj zadnji razlog, na primjer, uze mi zamijeniti spregnuti prototip / scriptaculous s jQuery, da bi interaktivni paneli / animirani ovdje u sidebar od undolog.com. Štoviše, čak i koristeći Google API za uvoz knjižnice, nalazi se otpad učitava cijeli knjižnica scriptaculous za slideDown i slideUp. Za informacije i uzorak, ovdje jučer Javascript kod povezanih s prototip / scriptaculous:
- / / Prototip / scriptaculous
- ) . each ( $ $ ( 'H2.dropdown'). Svaka (
- element ) { funkcija (element) (
- = "pointer" ; element. stilu. pokazivač = "pointer";
- 'click' , elemenata. promatranja ( "kliknite",
- event ) { funkcija (event) (
- this . next ( ) . style . display == "" ) new Effect. BlindUp ( this . next ( ) , { duration:. 5 } ) ; if (this. pored (). stilu. prikaz == "") novog Effect. BlindUp (this. pored (), (duration. 5));
- Effect. BlindDown ( this . next ( ) , { duration:. 3 } ) ; Učinak novih drugo. BlindDown (this. pored (), (trajanje:. 3));
- event ) ; Događaj je. Zaustavite (event);
- )
- )
- )
- );
i ona je sada s jQuery:
- / / JQuery
- ) . each ( $ ( 'H2.dropdown'). Svaka (
- i ) { funkciju (e) (
- ) . css ( 'cursor' , 'pointer' ) . click ( $ (To). CSS ( 'kursor', 'pointer'). Pritisnite (
- funkcija () (
- $ ( this ) . next ( ) . is ( ':hidden' ) ) $ ( this ) . next ( ) . slideDown ( ) ; else $ ( this ) . next ( ) . slideUp ( ) ; if ($ (ova). sljedeća (.) je ( ': skrivena')) $ (ova). sljedeća (). slideDown (); drugo $ (ova). sljedeća (). slideUp ();
- )
- );
- )
- );
Uostalom, na sve, ja ne mislim postoji puno razlika! Ali kao što sam rekao prije ... pitanje je "dobro" osobnih ukusa.


















Luka je rekao:
Zdravo,
na primjer s jQuery ne razumijem zašto ste morali napraviti svatko. Na kraju var Ne koristite ga bilo.
Mogu se jednostavno učinio:
$ ( "H2.dropdown"). CSS ("[...]"). kliku (funkcija (){[...]});Giovambattista Fazioli je rekao:
@ Luka: Vi ste potpuno pravo! Moj grešku kopirajte i zalijepite! Undo ...
Kod je:
jQuery: kako izgraditi produžetak Plugin | Undolog.com je rekao:
[...] Napiši dodatka uz nekoliko linija koda. Uzmi kao primjer kod predložene u jQuery protiv svakoga: 5 presedan s preglednikom koji je (nakon korekcija izvijestila Luca): Plain Text [...]