(function ($) {
...
}) (jQuery);
Trả lời
Để tránh xung đột với các thư viện javascript khác cũng sử dụng $
.
Phương pháp này, tuy nhiên, cho phép bạn sử dụng $
trong chức năng đó theo ý muốn của bạn, không cần sử dụng jQuery
tại đó.
Mẫu đó cũng quan trọng khi viết plugin jquery.
là gì Nó tạo ra một chức năng, với $
như một cuộc tranh cãi, và ngay lập tức chạy mà chức năng với jQuery
làm đối số. Điều này có hiệu quả sẽ đảm bảo rằng $
trỏ đến jQuery
bên trong mã của bạn, ngay cả khi sử dụng jQuery.noConflict()
.
Bằng cách này, bạn có thể sử dụng $
bên trong phạm vi chức năng của mình, nhưng ở bên ngoài, jQuery không clobbering sử dụng các thư viện khác của $
(ví dụ như Prototype cũng sử dụng $
, và một số người thích để trộn hai với nhau)
Ngoài lý do được nêu chi tiết trong các câu trả lời khác, nó nhanh hơn một chút để truy cập các đối số hàm so với các biến toàn cầu.
Miễn là jQuery.noConflict()
chưa được gọi, điều này có thể được viết là function($){ … }($)
có cùng tác dụng.
Còn được gọi là chức năng gọi lại ẩn danh, vì nó không được gắn với bất kỳ đối tượng nào, vì vậy hoàn toàn là 'chức năng'. Một mẫu thiết kế tốt khi thiết kế các plugin với jQuery để tránh xung đột như những người khác đã chỉ ra!
- 1. jQuery: Bấm vào * chỉ * yếu tố này
- 2. JQuery - Mục đích của cú pháp này là gì $ $ (function() {...});
- 3. Mục đích của việc này là gì? (function ($) {// function code here}) (jQuery);
- 4. Trình đơn CSS này được tạo ra như thế nào?
- 5. Mục đích của việc hack JavaScript này là gì?
- 6. Mục đích của đoạn mã CSS này là gì?
- 7. Thay đổi mã này có mục đích gì?
- 8. Mục đích của từ khóa 'này' trong C#
- 9. Tại sao coffeescript tạo ra các lớp như thế này?
- 10. Mục đích của #define này trong một enum là gì?
- 11. Cách chọn yếu tố không phải là 'cái này'?
- 12. jQuery được DOM yếu tố như chuỗi
- 13. jquery chọn yếu tố bên trong một lớp
- 14. Đầu ra của mã C này
- 15. Mã nguồn thực tế mà mẫu này tạo ra trông như thế nào?
- 16. jquery, quấn yếu tố bên trong một div
- 17. Mã này trong FormsAuthenticationModule phải hoạt động như thế nào?
- 18. Mã C: Các mã này hoạt động như thế nào?
- 19. Mục đích của việc thêm giả vào macro "số lượng phần tử" này là gì?
- 20. Tại sao yếu tố không làm việc trên phương pháp bị ràng buộc này?
- 21. Toán tử C# này hoạt động như thế nào trong đoạn mã này?
- 22. Mục đích của việc sử dụng "aria-labelledby" trên các yếu tố đầu vào đã được dán nhãn?
- 23. Regex này tìm số nguyên tố như thế nào?
- 24. Tại sao mã SQL này không tạo ra lỗi?
- 25. jQuery chọn yếu tố đầu tiên mà có một lớp nhất định sau này
- 26. Tại sao jQuery này trả lại chỉ mục là 3?
- 27. Lập trình viên này đạt được máy tính này bên trong trò chơi như thế nào?
- 28. số yếu tố bên trong một div với jquery
- 29. Nhận yếu tố chỉ mục trong danh sách với jQuery
- 30. jQuery animate yếu tố SVG
http://stackoverflow.com/questions/2024888/a-simple-question-on-jquery-closure – gnarf