이 두 가지 메소드를 먼저 소개하기 전, 흔히 click() 메소드를 사용합니다
$("a").click(function() {
Alert("hello");
});
click( ) 메소드는 바인딩() 메소드의 간단한 메소드입니다. 바인딩()에서는
포커스, 마우스오버, 크기 조정 등의 모든 jQuery JavaScript 이벤트 개체
를 유형 매개변수로 전달할 수 있습니다.
매개변수: type,[data],function(eventObject)
예:
$("p").bind("click",function(){
Alert("hello");
})
매개변수를 전달할 수도 있습니다
var message = "잘 지내세요!";
$("p").bind("click",{msg:message},function(e){
Alert(e.data .msg);
} )
live()는 요소가 나중에 추가되더라도
일치하는 모든 요소에 이벤트 핸들러를 연결합니다.
나를 클릭하세요 |
$(".mytd").bind("click",function(){
Alert("hello");
})
저를 클릭하시면 됩니다. 팝업 안녕하세요
이때 새 요소 추가
$ (".mytr").after("
|
" 뒤에 추가됨);
이것은 바인딩을 사용하여 "다음 이후에 추가"를 클릭하면 실행되지 않습니다
대신 live() 메소드를 사용하십시오
$(".mytd").live("click",function(){
Alert("hello");
})
.live() 메서드는 이벤트 위임 사용으로 인해 DOM에 추가되지 않은 요소에 효과적일 수 있습니다.
상위 요소에 바인딩된 이벤트 핸들러는 트리거된 이벤트에 응답할 수 있습니다. 후손에 .
.live()에 전달된 이벤트 핸들러는 요소에 바인딩되지 않지만 특수 이벤트 핸들러로 처리되어 DOM 트리의 루트 노드에 바인딩됩니다.