`jQuery.height()`가 숨겨진 요소의 값을 반환하는 이유는 무엇입니까?

Susan Sarandon
풀어 주다: 2024-10-28 05:23:02
원래의
803명이 탐색했습니다.

Why Does `jQuery.height()` Return a Value for a Hidden Element?

jQuery: height()/width() 및 "display:none"

이 시나리오에서 ID가 "target"인 요소 "에는 CSS를 통해 표시 속성이 "none"으로 설정되어 있습니다. 그러나 $("#target").height()를 사용하여 높이를 확인할 때 0이 아닌 값을 얻습니다.

이 동작은 치수에 액세스할 때 jQuery가 숨겨진 요소를 내부적으로 처리하는 데서 비롯됩니다. 요소의 offsetWidth가 0(jQuery에서 "숨겨진" 것으로 간주됨)인 경우 라이브러리는 해당 높이를 확인하려고 시도합니다.

이를 수행하기 위해 jQuery는 요소에 다음 속성을 일시적으로 적용합니다.

  • position: "absolute"
  • visibility: "hidden"
  • display: "block"

그런 다음 getWidthOrHeight(... ), 필요에 따라 테두리/패딩을 추가하고 원래 속성을 복원합니다.

기본적으로 jQuery는 ارج حدود تدبق المستند 요소를 눈에 띄지 않게 표시하고 높이를 얻은 다음 다시 숨깁니다. 이는 UI 스레드가 업데이트되기 전에 발생하므로 사용자는 프로세스를 인식하지 못합니다.

이 메커니즘을 사용하면 상위 요소가 표시되는 경우 숨겨진 요소에서도 .height()/.width()가 작동할 수 있습니다. 따라서 이러한 메소드에 의해 내부적으로 처리되므로 표시/숨기기 시퀀스를 수동으로 수행하지 않고도 .height()/.width()를 호출할 수 있습니다.

위 내용은 `jQuery.height()`가 숨겨진 요소의 값을 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿