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 웹사이트를 지원해 주셔서 대단히 감사합니다.