2009-08-07 29 views
61

Tôi hiện đang chịu trách nhiệm triển khai việc sử dụng jQuery cho cộng đồng các nhà phát triển web trong công ty của chúng tôi. Một phần của điều này bao gồm việc trình bày một khóa học, tuy nhiên một phần khác liên quan đến các tiêu chuẩn giao tiếp và thực hành tốt nhất.Tiêu chuẩn jQuery và thực tiễn tốt nhất

Nếu Google 'thực hành tốt nhất của jQuery', có thể bạn sẽ tìm thấy những điều sau đây trong số các kết quả tìm kiếm. http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/ http://www.artzstudio.com/2009/04/jquery-performance-rules/

Điều này rất hữu ích và tôi đã làm sáng tỏ nhiều thông tin hữu ích về chúng. Tuy nhiên, những gì tôi sẽ thực sự quan tâm sẽ là bất kỳ lời khuyên, bẫy, ý kiến, vv, trên thực hành tốt nhất từ ​​các nhà phát triển jQuery giàu kinh nghiệm và những người có thể đã thấy mình ở một vị trí tương tự với bản thân mình. Bất kỳ liên kết tốt nào cũng sẽ được đánh giá cao.

EDIT:

Added một jQuery Mã hóa phần tiêu chuẩn trên trang của riêng tôi:

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

Trả lời

42

Bạn có thể tìm thấy chủ đề xu hướng này ngay tại đây trong StackOverflow.com

jQuery pitfalls to avoid

lời khuyên hữu ích Rất thú vị một sau khi khác.

đây là một số chi tiết tôi tìm thấy trong bookmark của tôi:

+2

Thú vị liên kết, cảm ơn. Tôi nhận ra chủ đề khá giống nhau, tuy nhiên tôi vẫn quan tâm đến phản ứng từ quan điểm của những người ở một vị trí tương tự với bản thân tôi. Ngoài ra, tiêu đề không cho chính nó liên kết hữu ích khi tìm kiếm, trong khi điều này theo thời gian cũng có thể bật lên (và giới thiệu chủ đề khác ngay bây giờ bạn đã thêm nó vào!) –

+1

btw, tôi vừa tìm thấy một liên kết thú vị (a jQuery thử nghiệm sân chơi) commadot.com/jquery nếu bạn đi liên kết sau khi liên kết bạn có thể tìm hiểu rất nhiều ... – adardesign

+0

Một liên kết khác http://lab.abhinayrathore.com/jquery-standards/ – FDisk

2

Cách mà jQuery làm việc là không cùng một cách mà các công trình JavaScript, mặc dù họ là một và giống nhau. jQuery hoạt động trên các bộ chọn CSS, như tên lớp và id của các phần tử. Để chọn một mục trong jQuery, bạn thực hiện:

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

Và bạn sẽ nhận được một tập hợp tất cả các thành phần trên trang phù hợp với tiêu chí của bạn. Sau đó, bạn có thể thực hiện hành động của mình trên TẤT CẢ các yếu tố đó mà không cần bất kỳ vòng lặp nào. Điều quan trọng cần nhớ là:

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

sẽ ảnh hưởng đến tất cả các mục có .yourClass được đính kèm với chúng. Một mẹo: nếu bạn định truy cập vào $(this), bạn nên lưu nó dưới dạng biến cục bộ:

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

vì nó sẽ tăng tốc độ chức năng của bạn.

+17

-1. Tôi không thích tuyên bố này 'Cách mà jQuery làm việc KHÔNG giống như cách JavaScript hoạt động'. jQuery là JavaScript. Tôi sẽ nói nó là 'Có sự khác biệt giữa mã JS vanilla cho thao tác DOM so với mã jQuery JS cho thao tác DOM.' – SolutionYogi

+3

.... ngoại trừ việc đó là sự thật. tôi đã đề cập họ là một và giống nhau, nhưng jQuery tóm tắt rất nhiều crap bạn đang cần phải làm w/javascript. vì vậy trong khi bạn có thể trộn js trong w/jQ, chúng KHÔNG hoạt động giống nhau và rất nhiều nhà phát triển JS cố gắng viết mã JQ giống như cách họ viết mã JS. – Jason

+6

Tôi hoàn toàn hiểu cách jQuery và JavaScript hoạt động. Tôi đã phản đối với cách câu được diễn đạt, IMHO nó không đọc đúng. – SolutionYogi

27

Something Cá nhân tôi đã bắt đầu làm là một loại của một Apps Hungarian Notation cho jQuery đặt, bằng cách đặt trước những biến với một $

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

tôi thấy rằng như đoạn jQuery tôi phát triển, điều này trở thành vô giá, không chỉ trong việc thúc đẩy lưu trữ jQuery đặt như các biến, nhưng để giúp tôi theo dõi trong đó biến số thực sự là bộ jQuery.

12

Không phô trương JavaScript (tách đánh dấu và hành vi)

Trở lại trong ngày, nó đã được phổ biến để đưa handler nhấp chuột của bạn bên trong đánh dấu. Bây giờ bạn nên viết mã JS của bạn bên trong đánh dấu của bạn nhưng bao gồm nó thông qua các sự kiện DOM.

tăng cường Progressive

tài được kinh nghiệm tốt hơn nếu họ đang sử dụng các tiêu chuẩn trình duyệt phù hợp và/hoặc có kích hoạt Javascript. Ứng dụng web/web vẫn có thể truy cập ngay cả khi chúng có trình duyệt cũ hơn hoặc đã tắt JS.

phát hiện tính năng và không trình duyệt phát hiện

Giữ điểm nêu trên sang một bên, tôi sẽ thực sự tập trung vào việc truyền tải thông điệp (phá vỡ quan niệm trước thụ thai) rằng JavaScript là một ngôn ngữ đồ chơi. Tôi đã thấy quá nhiều nhà phát triển, những người nghĩ theo cách này và mọi thứ đều xuống dốc từ đó. Bạn cần phải giải thích cho họ cách JavaScript là một ngôn ngữ rất mạnh và tại sao họ cần một thư viện JS (vì trình duyệt không nhất quán) mặc dù JS chính nó là rất mạnh mẽ.

Chúc may mắn.

+1

Jason, xin lỗi, nhưng bạn có thể điểm tôi đã viết jQuery làm việc khác với JavaScript ở đâu? Trong thực tế, tôi thậm chí không đề cập đến jQuery trong câu trả lời của tôi. – SolutionYogi

+0

Bạn có thực sự nghĩ rằng "JavaScript là một ngôn ngữ đồ chơi" hay là một lỗi đánh máy? –

Các vấn đề liên quan