> 웹 프론트엔드 > JS 튜토리얼 > JavaScript의 HTML 요소 ID는 전역 속성입니까?

JavaScript의 HTML 요소 ID는 전역 속성입니까?

DDD
풀어 주다: 2024-12-25 02:14:08
원래의
384명이 탐색했습니다.

Are HTML Element IDs Global Properties in JavaScript?

DOM 트리 요소의 ID 속성이 전역 속성을 만들까요?

Internet Explorer 및 Chrome과 같은 특정 브라우저에서는 HTML 요소에 할당된 ID는 변수 이름이나 창 개체의 속성으로 접근할 수 있습니다. 예를 들어

ID가 "example"인 요소는 example.innerHTML 또는 window["example"].innerHTML을 사용하여 검색할 수 있습니다.

그러나 이 동작은 의도된 것이 아니며 잠재적인 함정으로 간주되어야 합니다. 광범위한 답변에서 지적했듯이 브라우저는 명명된 요소를 문서 개체(IE의 경우 창 개체도 포함)의 속성으로 추가합니다. 이는 요소 이름이 기존 속성과 충돌할 수 있기 때문에 잘못된 디자인 결정입니다. 개체.

이 문제를 방지하려면 요소 검색에 document.getElementById를 계속 사용하는 것이 좋습니다. 이 방법은 널리 지원되며 코드의 명확성을 제공합니다. 긴 이름이 문제가 되는 경우 ID-요소 조회의 의도하지 않은 동작에 의존하는 대신 더 짧은 래퍼 함수를 ​​생성할 수 있습니다.

이름이 지정된 요소를 전역으로 액세스 가능하게 만드는 관행에 유의하는 것이 중요합니다. 문서 및 창 속성 모두에 이러한 요소를 배치하는 것을 포함하여 유사한 변수가 HTML5에서 공식화되고 있습니다. 그러나 표준화에도 불구하고 document.getElementById와 같은 보다 강력하고 명확한 방법을 선호하는 경우에는 피하는 것이 가장 좋습니다.

위 내용은 JavaScript의 HTML 요소 ID는 전역 속성입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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