특수한 시나리오를 사용하면 이벤트를 특정 클래스의 자식 요소 중 첫 번째 요소에 동적으로 바인딩해야합니다.jquery .on() selector의 ": first"가 항상 작동하지 않는 이유는 무엇입니까?
<div></div>
가 그럼 난 자식 요소 '.button'처음에 이벤트를 클릭 바인딩 : 예를 들어 나는 하나 개의 사업부가
$('div').on('click', '.button:first', function (event) {
alert($(event.target).text());
});
그리고 자식 요소는 나중에 생성됩니다 :
$('div').append(
"<span class='button'>Button1</span>" +
"<span class='button'>Button2</span>");
이 경우 Button1을 클릭하면 경고 창이 팝업됩니다. Button2는 그렇지 않습니다. 그건 올바른, ... 때까지 내가 div 요소 위에 하나의 .button '요소를 넣을 때까지.
<span class='button'>Outer Button</span>
<div></div>
그런 다음 Button1을 클릭해도 경고 창이 트리거되지 않습니다. 코드가 여기에 있습니다 : http://jsfiddle.net/D2H92/
이것이 항상 작동하지 않는 이유는 무엇이며 어떻게 해결할 수 있습니까? 건배!
내 문제가 해결되었습니다. – bigbearzhu