jQuery에서 많이 사용되는 이벤트(event) 심는 방법에는 옛 버전부터 최근까지 여러 용법이 소개되고 쓰여왔다. 이런 많은 용법이 함께 사용되면서 상황에 따라 어떤 것을 써야 할지 고민하게 되고, 또 서로 다른 용법으로 혼란을 줄 수도 있었다.
그래서 최신 1.7 버전부턴 과거부터 축적돼서 사용되던 이런 여러 방법을 통합하려는 시도로 .on() method가 소개되었는데, 이런 여러 용법을 잘 정리해서 비교해 놓은 글. – Differences Between jQuery .bind() vs .live() vs .delegate() vs .on()
결국, 전부터 쓰던 .bind()
, .live()
, .delegate()
method는 더 일관된 사용법의 통합된 .on()
method를 써서 다음과 같이 적용해 줄 수 있다.
/* The jQuery .bind(), .live(), and .delegate() methods are just oneline pass throughs to the new jQuery 1.7 .on() method */// Bind$ "#members li a" on "click" {} ;$ "#members li a" bind "click" {} ;// Live$ document on "click" "#members li a" {} ;$ "#members li a" live "click" {} ;// Delegate$ "#members" on "click" "li a" {} ;$ "#members" delegate "li a" "click" {} ;
jQuery 1.7.x 버전부턴 .on()
method가 대세.