반응형
j.트리거의 장점/차이 .trigger() vs.click()
성능 측면에서 다음과 같은 이점(또는 차이점)은 무엇입니까?
$('.myEl').click();
그리고.
$('.myEl').trigger('click');
전혀 없나요?
메소드 코드는 다음과 같습니다.
jQuery.fn.click = function (data, fn) {
if (fn == null) {
fn = data;
data = null;
}
return arguments.length > 0 ? this.on("click", null, data, fn) : this.trigger("click");
}
보시다시피 함수에 인수가 전달되지 않으면 클릭 이벤트가 트리거됩니다.
사용..trigger("click")
함수를 하나 덜 호출합니다.
@Sandeep이 그의 대답에서 지적한 것처럼 .trigger("click")
보다 빠릅니다.
1.9.0 시점에서 의 점검이 다음 기능으로 이동되었습니다.
$.fn.click = function (data, fn) {
return arguments.length > 0 ? this.on("click", null, data, fn) : this.trigger("click");
}
라고 생각합니다.
$('.myEl').trigger('click');
다음과 같이 함수 호출을 저장하기 때문에 더 좋습니다.$('.myEl').click();
그냥 그 재미있는 말만 해요.jQuery 소스의 코드를 봅니다.
jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " +
"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
"change select submit keydown keypress keyup error contextmenu").split(" "), function( i, name ) {
// Handle event binding
jQuery.fn[ name ] = function( data, fn ) {
if ( fn == null ) {
fn = data;
data = null;
}
return arguments.length > 0 ?
this.on( name, null, data, fn ) :
//here they call trigger('click'); if you provide no arguments
this.trigger( name );
};
if ( jQuery.attrFn ) {
jQuery.attrFn[ name ] = true;
}
if ( rkeyEvent.test( name ) ) {
jQuery.event.fixHooks[ name ] = jQuery.event.keyHooks;
}
if ( rmouseEvent.test( name ) ) {
jQuery.event.fixHooks[ name ] = jQuery.event.mouseHooks;
}
});
성능 종류는 여기서 확인해보세요.http://jsperf.com/trigger-vs-not-trigger 둘 다 거의 같습니다...클릭 ()은 트리거 (' '클릭'의 약자입니다.
http://api.jquery.com/click/ 확인하기:
세 번째 변형에서 인수 없이 .click()을 호출하면 .trigger("클릭")의 바로 가기가 됩니다.
그들은 같은 것 같습니다.
언급URL : https://stackoverflow.com/questions/9666471/jquery-advantages-differences-in-trigger-vs-click
반응형
'programing' 카테고리의 다른 글
SQL*Plus가 실행 중인 시스템에서 환경 변수를 읽을 수 있습니까? (0) | 2023.10.16 |
---|---|
WP_Query meta_query 날짜 범위(사용자 정의 필드 2개 포함) (0) | 2023.10.16 |
XmlSerializer를 사용하여 빈 xml 특성 값을 nullable int 속성으로 역직렬화 (0) | 2023.10.11 |
값이 숫자 범위 내에 있는지 확인합니다. (0) | 2023.10.11 |
고정 사이드바가 jQuery와 바닥글이 겹치지 않게 하려면 어떻게 해야 합니까? (0) | 2023.10.11 |