이 함수에서 전역 변수가 인식되지 않는 이유는 무엇입니까?글로벌 및 로컬 javascript 범위
<script type="text/javascript">
var id_f = document.getElementById('f');
function foo()
{
id_f.innerHTML=("text");
}
</script>
이 함수에서 전역 변수가 인식되지 않는 이유는 무엇입니까?글로벌 및 로컬 javascript 범위
<script type="text/javascript">
var id_f = document.getElementById('f');
function foo()
{
id_f.innerHTML=("text");
}
</script>
.getElementById()
기능은 일치하는 요소가 오류하지 않은, 발견되지 않으면 null
반환하지만 id_f
변수가 null
의 경우에 .innerHTML
속성이 없습니다 그 오류를 줄 것이다.
페이지 소스에 일치하는 요소가 있어도 스크립트가 실행되지 않으면 요소가 실제로 구문 분석되지 않으면 해당 요소가 발견되지 않습니다. 따라서 스크립트는 소스의 요소 다음 (예 : </body>
태그가 닫히기 직전)에 있어야하거나 onload 또는 document.ready 유형 핸들러를 추가하고 거기에서 코드를 실행해야합니다.
(당신은 함수의 시작 부분에 console.log(id_f)
또는 alert(id_f)
를 추가하면 무엇을 얻을 수 있습니까?)
감사합니다. 그것은 정확히 문제였습니다. 나는 자바 스크립트로 작업하기 시작 했으므로 답을 고맙게 여기지 않고 감사하게 생각한다. – T110
당신은 잘못입니다. 그것은 인정된다. – akonsu
정확히 작동하지 않는 것은 무엇입니까? – user1096188
당신의 HTML 코드에서 어디에 놓았습니까? 그리고 어떤 브라우저로 테스트하고 있습니까? – skyburner