두 줄의 코드는 두 가지 허용되는 구문을 사용하여 변경 이벤트를 this.element
으로 트리거합니다. .trigger()를 사용
:
this.element.trigger('change');
아니면 속기 방법 .change() 사용 :
that.element.change();
당신은 실제로이 이벤트를 처리 할 this.element
로 표현 요소에 이벤트 처리기를 바인딩 할 수 있습니다. 플러그인을 모른 채
, this.element
무엇에 정확하게 대답하기가 어렵습니다.
하지만 자동 완성 플러그인 예를 들어보세요. 여기서는 this.element
이 실제로 자동 완성 플러그인이 적용되는 입력 필드입니다. 이 플러그인은 jQuery UI Widget Factory에 의존하는 지금, 만약이 것이 좋습니다
$('#myinput')
.autocomplete()
.bind('change', function() { });
은을 사용하기 : 변경 이벤트가 아마도 귀하의 질문에 다 같이 트리거 된 경우에는이 같은 입력에 이벤트 처리기를 바인딩 할 수 있습니다 메소드
_trigger()
을 사용하여 jquery .trigger() 대신 이벤트를 트리거하십시오.
_trigger()를 사용하면 플러그인의 옵션에 정의 된 모든 콜백을 올바른 컨텍스트로 실행하고 this.element
(위와 유사) 이벤트를 트리거합니다. 그래서 당신은 할 수 :
$('#myinput')
.somePlugin({
change: function(e, someData) {
// "this" here will be `this.element´
}
})
.bind('change', function() { ... });