2011-11-03 38 views

Trả lời

4

$(el).on cung cấp cho nhà phát triển một cách thống nhất các sự kiện ràng buộc cho mọi loại sự kiện, sự kiện trực tiếp và được ủy quyền. Nó cũng cho phép bạn liên kết nhiều hơn một sự kiện cùng một lúc bằng cách truyền một đối tượng (ví dụ thứ 2 trong số documentation)

Bạn cũng lưu một vài lần bấm phím, cho những gì nó đáng giá.

2

Với .on() bạn có thể gắn nhiều hơn một loại sự kiện cùng một lúc, do đó bạn không phải sao chép mã hoặc tạo một hàm riêng biệt nếu bạn muốn thực hiện tương tự trên nhiều sự kiện.

+0

Bạn có thể liên kết một hàm duy nhất với nhiều loại sự kiện với các chức năng khác. Đây là một sự thống nhất xử lý sự kiện, và nó cũng cho phép bạn gán nhiều hơn một hàm cho nhiều hơn một sự kiện thông qua ánh xạ. – JAAulde

+0

Chắc chắn, nhưng không phải với '.click()' được đề cập cụ thể! – JJJ

+0

Ah, đúng là – JAAulde

0

Dường như với tôi như đang được tổ chức để kết hợp/thay thế các chức năng ràng buộc sự kiện khác nhau ... Một chức năng để liên kết tất cả! (LOTR geekery ftw)

+0

sẽ đổ chuông ... – roselan

1

Đó là sự hiểu biết của tôi rằng .on() mới là một sự hợp nhất của một số chức năng trùng lặp trong .bind(), .delegate().live(). Nó là một sự hợp nhất của API vì nó là một sự kết hợp của các triển khai vào một triển khai thống nhất hơn.

2

$(el).click(...) là viết tắt của $(el).bind('click', ...). Nếu bạn so sánh documentation for bind() với documentation for on(), bạn sẽ thấy một số khác biệt.

này được khá tốt tóm tắt bởi đoạn đầu tiên của bind() tài liệu:

Tính đến jQuery 1.7, phương pháp .Trên() là phương pháp ưa thích cho gắn xử lý sự kiện cho một tài liệu. Đối với các phiên bản trước, phương thức .bind() được sử dụng để đính kèm trình xử lý sự kiện trực tiếp vào các phần tử . Trình xử lý được gắn với các phần tử hiện được chọn trong đối tượng jQuery là , vì vậy các phần tử đó phải tồn tại tại thời điểm cuộc gọi tới .bind() xảy ra. Để có sự kiện ràng buộc linh hoạt hơn, hãy xem cuộc thảo luận của sự kiện ủy quyền trong .on() hoặc .delegate().

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