DOM 트리 요소의 ID 속성이 전역 속성을 만들까요?
Internet Explorer 및 Chrome과 같은 특정 브라우저에서는 HTML 요소에 할당된 ID는 변수 이름이나 창 개체의 속성으로 접근할 수 있습니다. 예를 들어
그러나 이 동작은 의도된 것이 아니며 잠재적인 함정으로 간주되어야 합니다. 광범위한 답변에서 지적했듯이 브라우저는 명명된 요소를 문서 개체(IE의 경우 창 개체도 포함)의 속성으로 추가합니다. 이는 요소 이름이 기존 속성과 충돌할 수 있기 때문에 잘못된 디자인 결정입니다. 개체.
이 문제를 방지하려면 요소 검색에 document.getElementById를 계속 사용하는 것이 좋습니다. 이 방법은 널리 지원되며 코드의 명확성을 제공합니다. 긴 이름이 문제가 되는 경우 ID-요소 조회의 의도하지 않은 동작에 의존하는 대신 더 짧은 래퍼 함수를 생성할 수 있습니다.
이름이 지정된 요소를 전역으로 액세스 가능하게 만드는 관행에 유의하는 것이 중요합니다. 문서 및 창 속성 모두에 이러한 요소를 배치하는 것을 포함하여 유사한 변수가 HTML5에서 공식화되고 있습니다. 그러나 표준화에도 불구하고 document.getElementById와 같은 보다 강력하고 명확한 방법을 선호하는 경우에는 피하는 것이 가장 좋습니다.
위 내용은 JavaScript의 HTML 요소 ID는 전역 속성입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!