getElementById가 객체를 가져올 수 없습니다.
브라우저가 문서를 파싱할 때 페이지가 로드되기 전, 또는 해당 DOM 객체가 로드되기 전에 해당 객체를 얻을 수 없는 순서가 있습니다.
아래 코드를 보세요:
<스크립트> var temp = document.getElementById("div"); 경고(임시); </script> <본문> <div 아이디="div"> <입력 이름="사용자 이름" id="사용자 이름" 유형="텍스트"> <button id="btn">버튼</button> </div> </body>
이 코드에서는 document.getElementById(“div”)
가 객체를 얻을 수 없으며, Alert(temp)는 null을 팝업합니다.
이는 브라우저가 스크립트 태그의 코드를 파싱할 때 본문의 DOM 요소가 로드되지 않아 당연히 아무것도 얻을 수 없기 때문입니다.
해결 방법: 스크립트의 코드를 본문 요소 뒤로 이동하세요.
<본문> <div 아이디="div"> <입력 이름="사용자 이름" id="사용자 이름" 유형="텍스트"> <button id="btn">버튼</button> </div> <스크립트> var temp = document.getElementById("div"); 경고(임시); </script> </body>
또는 window.onload를 추가하세요.
<스크립트> window.onload = 함수(){ var temp = document.getElementById("div"); 경고(임시); } </script>
요약
위 내용은 document.getElementBy 시리즈 메소드가 객체를 얻을 수 없는 문제를 해결하기 위해 소개한 내용입니다. downcodes.com 웹사이트를 지원해 주셔서 대단히 감사합니다.