Her biri birkaç noktaya değinen çok sayıda cevap var - umarım bu, neyin ve nasıl kullanılacağına dair iyi bir açıklama ile size cevabınızı verebilir.
Kullanmak click()bir takma addır bind('click' ...). Kullanımı bind(), olay dinleyicisi kurulurken DOM'u olduğu gibi alır ve işlevi DOM'daki eşleşen öğelerin her birine bağlar. Diğer bir deyişle, kullanırsanız $('a').click(...), bu kod çalıştığında bulunan DOM'daki her bağlantı etiketinin tıklama olayına sağlanan işlevi bağlayacaksınız.
JQuery'de kullanmak live()eski yöntemdi; tıpkı bind()yaptığı gibi olayları bağlamak için kullanıldı , ancak kod çalıştığında bunları DOM içindeki öğelere bağlamakla kalmaz, aynı zamanda DOM'daki değişiklikleri dinler ve olayları gelecekte eşleşecek öğelere de bağlar. Bu, DOM manipülasyonu yapıyorsanız ve DOM'a daha sonra kaldırılabilen / güncellenebilen / eklenen ancak DOM ilk yüklendiğinde var olmayan bazı öğelerde bir olay olması gerekiyorsa kullanışlıdır.
Sebebi live()o kötü uygulanan çünkü artık amorti olmasıdır. Kullanmak içinlive() , size (sanırım) başlangıçta DOM en az bir eleman seçmek mümkün olması gerekiyordu. Ayrıca, işlevin bir kopyasının her öğeye bağlı olarak çalışmasına neden oldu - ve 1000 öğeniz varsa, bu çok sayıda kopyalanmış işlevdir.
on()Fonksiyonun yaratılması, bu sorunların üstesinden gelmekti. Tek bir olay dinleyicisini DOM'da değişmeyecek bir nesneye bağlamanıza olanak tanır (böylece on()daha sonra kaldırılacak / DOM'a eklenecek bir öğe üzerinde kullanamazsınız - onu bir ana nesneye bağlayın) ve basitçe uygulayın işlevin yalnızca seçici ile eşleşen bir öğeye köpürtüldüğünde çalıştırılması için bir "filtre" öğesi. Bu, tek bir öğeye bağlı (bir grup kopya değil) yalnızca bir işleviniz olduğu anlamına gelir - DOM'a "canlı" etkinlikler eklemek için çok daha iyi bir yaklaşım.
... ve bu farklılıklardır ve her işlevin neden var olduğu ve neden live()amortismana tabi tutulduğu.
oniçinclickçünküclickne yapar olan bir fiil, bir eylem, benzerleri gibi bir işlev adı sesler değil (ayrıca aynı ile yapabileceğiniz gibi eleman tıklaclickfonksiyonu)