2009-08-07 24 views
61

Jestem obecnie odpowiedzialny za udostępnienie jQuery społeczności społeczności programistów w naszej firmie. Częściowo wiąże się to z przedstawieniem kursu, jednak inna część dotyczy komunikowania standardów i najlepszych praktyk.Standardy jQuery i najlepsze praktyki

Jeśli korzystasz z najlepszej praktyki jQuery w Google, prawdopodobnie znajdziesz wśród wyników wyszukiwania następujące wyniki. http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/ http://www.artzstudio.com/2009/04/jquery-performance-rules/

Zostały one pomocne i mam błyszczały dużo przydatnych informacji na ich temat. Jednak to, co mnie naprawdę interesuje, to porady, pułapki, opinie itp. Na temat najlepszych praktyk od doświadczonych programistów jQuery i tych, którzy mogli znaleźć się w podobnej sytuacji jak ja. Dowolne dobre linki również zostaną docenione.

EDIT:

dodał jQuery Coding sekcję Standards na własnej stronie:

http://www.jameswiseman.com/blog/?p=48

Odpowiedz

42

Można znaleźć ten temat po popularne tutaj w stackoverflow.com

jQuery pitfalls to avoid

Bardzo ciekawych przydatnych wskazówek jedna po drugiej.

Oto kilka znalazłem w moich zakładek:

+2

Interesujące linki, dzięki. Zdaję sobie sprawę, że temat jest bardzo podobny, jednak nadal interesują mnie odpowiedzi z perspektywy osób znajdujących się w podobnej sytuacji jak ja. Tytuł nie nadaje się również do użytecznych linków podczas wyszukiwania, podczas gdy z czasem może się pojawić (i zmienić temat na inny, w którym już go dodałeś!). –

+1

Przy okazji znalazłem interesujący link (plac zabaw eksperymentu jQuery) commadot.com/jquery jeśli przejdziesz do linku po linku, możesz się wiele nauczyć ... – adardesign

+0

Jeszcze jeden link http://lab.abhinayrathore.com/jquery-standards/ – FDisk

2

Sposób, że jQuery działa nie jest taki sam sposób, że JavaScript działa, mimo że są one jeden i ten sam. jQuery działa na selektorach CSS, takich jak nazwa klasy i id elementów. Aby wybrać element w jQuery, robisz:

$("#yourID") or $(".yourClass") or $("div") or $("#yourID p") etc 

I dostaniesz kolekcję wszystkich elementów na stronie, które pasują do Twoich kryteriów. Następnie możesz wykonywać swoje działania na WSZYSTKICH tych elementach bez żadnych pętli. Jest to ważne, aby pamiętać:

$(".yourClass").click(function(){ 
    //do stuff 
}); 

wpłynie na wszystkie pozycje z .yourClass z nimi związane. Jedna rada: jeśli masz zamiar otworzyć $(this), należy go zapisać jako zmiennej lokalnej:

$(".yourClass").click(function(){ 
    var $this = $(this); 
}); 

jak to przyspieszyć swoją funkcję.

+17

-1. Nie podoba mi się to stwierdzenie "Sposób, w jaki działa jQuery, NIE jest taki sam jak działa JavaScript". jQuery to JavaScript. Powiedziałbym to jako "Istnieje różnica między kodem waniliowym JS dla manipulacji DOM a kodem jQuery JS do manipulacji DOM." – SolutionYogi

+3

.... poza tym, że to prawda. Wspomniałem, że są one jednym i tym samym, ale jQuery zawiera wiele bzdur, które są wymagane do wykonania w javascript. więc podczas gdy możesz mieszać js w w/jQ, NIE działają tak samo, a wielu programistów JS próbuje napisać kod JQ w ten sam sposób, w jaki piszą kod JS. – Jason

+6

Dokładnie rozumiem, jak działa jQuery i JavaScript. Mam zastrzeżenia co do sposobu sformułowania zdania, IMHO to nie czyta dobrze. – SolutionYogi

27

Coś Ja osobiście zacząłem robić to swego rodzaju Apps Hungarian Notation dla jQuery ustawia, poprzedzając te zmienne z $

var someInt = 1; 
var $someQueryCollection = $('selector'); 

uważam, że jak moje fragmenty jQuery rośnie, to staje się bezcenne, nie tylko w promowaniu przechowywania jQuery ustawia jako zmienne, ale mi pomóc śledzić których zmienne faktycznie są zestawów jQuery.

12

Dyskretna JavaScript (oddzielenie znaczników i zachowania)

W czasach, to było powszechne, aby umieścić wewnątrz kliknij obsługi znaczników. Zaleca się, abyś nie zapisywał kodu JS wewnątrz znaczników, ale uwzględniał go za pośrednictwem zdarzeń DOM.

progresywne ulepszanie

Użytkownik dostaje lepsze doświadczenie jeśli są one za pomocą standardów przeglądarki zgodnej i/lub ma włączoną obsługę JavaScript. Witryna internetowa/aplikacja internetowa jest nadal dostępna, nawet jeśli mają starszą przeglądarkę lub JS jest wyłączony.

wykrywanie funkcji i nie wykrycie przeglądarka

Mając powyższe punkty na bok, ja naprawdę skupić się na przekazywaniu wiadomości (łamanie wstępnie pomyślany pojęcia), że JavaScript jest językiem zabawka. Widziałem zbyt wielu programistów, którzy myślą w ten sposób i wszystko jest z górki. Musisz wyjaśnić, jak JavaScript jest bardzo potężnym językiem i dlaczego potrzebuje biblioteki JS (z powodu niespójności przeglądarki), mimo że sam JS jest bardzo potężny.

Powodzenia.

+1

Jason, przepraszam ale czy mógłbyś wskazać gdzie napisałem, że jQuery działa inaczej niż JavaScript? Właściwie nawet nie wspomniałem o jQuery w mojej odpowiedzi. – SolutionYogi

+0

Czy naprawdę sądzisz, że "JavaScript jest językiem zabawek" lub jest to literówka? –