스크립트 위치에 관해서....
본문
스크립트는 대개 <head></head> 사이에 넣으라고 하잖아요.
그런데, 가끔 보면
스크립트 코드가 출력 위치 HTML 코드보다 앞에 위치하면
값이 제대로 출력 안 되는 경우가 있더라구요.
(예)
[출력 안 됨] http://codepen.io/sinbi/pen/KrjXgp
[출력 잘 됨] http://codepen.io/sinbi/pen/Gqbrqw
어쩔 땐 스크립트를 앞에 위치시켜야 하고,
어쩔 땐 스크립트를 뒤에 위치시켜야 하는 건가요?
답변 3
브라우저는 위에서 아래로 랜더링 하는데
<div>a값: "<span id="hom"></span>"</div>
<div>b값: "<span id="zzang"></span>"</div>
가 로드되기전에 스크립트를 호출 하면 실행이되지 않습니다.
http://codepen.io/sinbi/pen/Gqbrqw 처럼 해야 하는게 맞습니다.
상위에 선언하려면 지금 html이 다 로드된다음에 실행 하도록 명령하셔야 합니다.
sir 소스보기 보면
$(function() {
... 페이지가 로드된 후에 실행되는 스크립트
})
이런식으로요
스크립트가 실행될때 해당 html 이 로딩이 되어있어야 가능한경우 입니다.
document.getElementById("hom").innerHTML
html hom 이라는 id를 가진 태그가 로딩 되기전에 스크립트가 실행이 된경우입니다.
그래서 html 로딩이 다된후에 스크립트 실행이 필요하다면 onload() 함수를 씁니다.
답변해주신 분들 모두 감사합니다.
답변을 작성하시기 전에 로그인 해주세요.