이 동적 요소 실행에 바인딩하는 (또는 죽은) 이벤트 중 하나도 존재하지 않는 이유는 무엇입니까?동적 요소에 대해 라이브 jQuery 이벤트가 실행되지 않습니다.
(function ($) {
$.fn.myPlugin = function() {
var $filterBox = $("<input type='text'>").live("click", function() {
alert("Clicked");
});
this.before($filterBox); // insert into DOM before current element
return this; // keep chain
};
})(jQuery);
나는 여러 <select>
요소에 myPlugin를 호출하고 있습니다. DOM에 요소를 추가하기 전에 바인딩 한 경우 라이브 플러그인없이 작동 할 것이라고 생각했지만 라이브 이벤트조차도 실행되지 않습니다. 내 요소에 ID가 없기 때문에 그것입니까?
편집 : 다음 중 하나가 작동하지 않습니다
var $filterBox = $("<input type='text'>").bind("click", function() {
alert("Clicked");
});
i가 작동하지 않는 이유는 확실하지. 그러나 라이브는 필요한 셀렉터에 한 번만 호출해야합니다. 귀하의 코드에서 클릭() 충분해야합니다. –
RE : 귀하의 편집. 그건 잘 작동합니다. 사실 그것은 * (* Nick 's) jsfiddle에서 작동합니다. 페이지에 오류가 있습니까? 방화범을 풀 수 있습니까? – Stephen
몇 개의 요소를 플러그인으로 호출하고 있습니까? – SLaks