답변:
.hide () 에 대한 jQuery 페이지에서 :
"일치하는 요소는 애니메이션없이 즉시 숨겨집니다. 이는 display 속성 값이 jQuery의 데이터 캐시에 저장되어 나중에 표시 할 수 있다는 점을 제외하고는 .css ( 'display', 'none') 호출과 거의 같습니다. 요소에 표시 값이 인라인 인 경우 숨겨져 표시되면 다시 한 번 인라인으로 표시됩니다. "
따라서의 이전 값으로 되돌릴 수있는 것이 중요한 경우 이전 상태를 기억하는 방식으로 display
사용 hide()
하는 것이 좋습니다 . 그 외에는 차이가 없습니다.
jQuery 코드를 보면 다음과 같은 일이 발생합니다.
hide: function( speed, easing, callback ) {
if ( speed || speed === 0 ) {
return this.animate( genFx("hide", 3), speed, easing, callback);
} else {
for ( var i = 0, j = this.length; i < j; i++ ) {
var display = jQuery.css( this[i], "display" );
if ( display !== "none" ) {
jQuery.data( this[i], "olddisplay", display );
}
}
// Set the display of the elements in a second loop
// to avoid the constant reflow
for ( i = 0; i < j; i++ ) {
this[i].style.display = "none";
}
return this;
}
},
그들은 같은 것입니다. .hide()
jQuery 함수를 호출하고 콜백 함수를 추가 할 수 있습니다. 그래서, 함께 .hide()
사용하면 예를 들어 애니메이션을 추가 할 수 있습니다.
.css("display","none")
요소의 속성을로 변경합니다 display:none
. JavaScript에서 다음을 수행하는 것과 같습니다.
document.getElementById('elementId').style.display = 'none';
이 .hide()
함수는 콜백 함수, 속도 등을 확인하므로 실행하는 데 시간이 더 오래 걸립니다.
기본 숨기기 방법을 사용하면 차이가 없습니다. 그러나 jquery는 요소에 영향을주는 다양한 숨기기 방법을 제공합니다. 자세한 설명은 아래 링크를 참조하십시오 .Jquery에서 숨기기 효과