2010-08-11 3 views
2

live()는 현재 AND "나중에 추가 된"DOM 요소에 대한 이벤트 핸들러를 지원하는 데 사용될 수 있다는 것을 알고 있습니다.jQuery 라이브 핸들러가 각()에 대해?

each()를 사용하여 동일한 작업을 수행하는 방법을 알고 싶습니다.

$ ('. something_or_other')처럼 (each)하지만 class = "something_or_other"인 다른 DOM 요소가 추가되는 것과 비슷합니까? 이 새로운 DOM 요소에 각 반복을 자동으로 적용하도록 설정하려면 어떻게해야합니까?

또는 각 DOM 규칙을 다시 적용하기 위해 새 DOM 요소를 추가 한 후 무엇을 호출해야합니까?

은 (조금 여기 내 나이를 표시하지만, 행동에서 우리는 모든 규칙을 다시 적용 Behaviour.apply()를 사용할 수 있습니다!)

+0

는 소리? 우리가하려는 일에 대해 더 많은 정보가 필요하다고 생각합니다. 왜 새로운 DOM 요소를 추가 한 후에 새로운 jquery 객체를 만들지 못하는 이유는 무엇입니까? – morgancodes

+0

jQuery를 사용하여 class = "autocompleter"로 텍스트 입력을 "자동 완성"합니다. 자, 이러한 autocompleters 중 일부는 자동으로 다른 autocompleter 텍스트 입력 자체를 삽입하는 "onValueAccepted"콜백 있습니다. – Dougal

+0

jQuery에는 이미 놀라운 자동 완성 UI 위젯이 있습니다. 코드를 작성하지 않아도됩니다. http://jqueryui.com/demos/autocomplete/. 그것이 당신을 위해 작동하지 않는다면, 당신을 위해 일할 수 있도록 그것을 확장 할 수 있습니다. – UpHelix

답변

0

@ mediaer이 표시되어 있으므로이 작업을 수동으로 수행해야합니다. 원한다면 두 가지 기능 모두에 동일한 기능을 사용할 수 있습니다.

function myFunction(i,val) { 
    $(this).doSomething; 
} 

$('someSelector').each(myFunction); 

$.ajax({ 
    url:'/some/path/', 
    success: function(data) { 
     $(data).find('someSelector').each(myFunction) 
       .end().appendTo('body'); 
    } 
}); 

당신이 정말, 코드를 실행 livequery라는 플러그인이 있다고하지 않으려면 때 선택에 추가 (또는 제거)하는 DOM 일치하는 요소입니다.

약간의 추가 오버 헤드가 들지만 옵션입니다. 당신이 개체의 배열에 추가 단지 초기 JQuery와 객체 jqObj = $ (선택)을 만들려하고 선택에 미래의 경기를 가지고있는 것처럼

http://brandonaaron.net/code/livequery/docs

+0

livequery는 제가 생각한 것처럼 보입니다. 감사. 다른 사람들의 포인트도 매우 유효합니다. – Dougal

0

왜 당신은 단지를 추가 아약스 콜백 기능을 결합 할 수있다 doc에 DOM 요소가 있습니까? 내게 가장 짧고 가장 논리적 인 경로로 보입니다.

+0

어떤 기능! 나는 그것을 할 수있는 자동 방법이 있기를 바라고 있습니다. 또한 어떻게 수동으로 할 수 있는지 알고 싶습니다. 각 추가 된 요소에 대해 each() 반복에서 모든 코드를 반복해야합니까 ?? – Dougal

관련 문제