[2장] HTML 속의 자바스크립트
자바스크립트는 나오자마자 HTML에 포함되었고, HTML 방해안하려는 방식으로 표준화 되면서 HTML명세에서 공식적으로 문서화되었습니다.
2.1 script 요소
5가지 옵션을 지정할 수 있음. (== 필수아님, 생략가능)
– async : 뭔말이지!? 이해 못하고 있음…OTL
– charset : 대부분 브라우저들이 무시하는 속성.
– defer : 콘텐츠를 파싱하고 표시할때까지 스크립트 실행을 미루는 옵션. 스크립트를 외부에서 불러올때만 유효.
– language : 폐기.
– src : 외부 파일의 위치
– type : language 대체하려고 만들었지만, 생략해도 안전. 기본값이 text/javascript 로 되어있다.
script 요소 사용방법
1) 인라인 – 직접 구현하는 방법.
[javascript]<script>
function hello(){}
</script>
[/javascript]
2) 호출 – 외부에서 파일 불러오기
[javascript]<script src="hello.js"></script>
<script src="hello.js"/> //익스플로러에선 닫는 태그 생략을 허용하지 않음
[/javascript]
2.1.1 태그위치
head 안에 쓰면 – 자바스크립트부터 파싱해서 느림
body 끝부분에 쓰면 – 페이지 콘텐츠부터 보여주므로 빨라보임
2.1.3 비동기 스크립트
async 속성. 마크업 순서대로 실행하는게 아니니까 DOM을 조작하는 스크립트에서는 안쓰는게 좋음
2.1.4 XHTML에서 바뀐 점
1) HTML보다 엄격하므로 < 를 엔티티 & l t ;로 바꾸던가.
2) CDATA섹션으로 감싼다.
3) XHTML 비호환에선 CDATA 섹션을 지원하지 않으니까 //주석기호로 다시 감싼다.
잔기술이긴 하지만 어쨋든 최신브라우저에서 모두 잘돌아간다.
2.1.5 구식문법
궁금하면 27p
2.2 인라인 코드와 외부 파일
외부파일로 만드는 것이 좋은 이유3
– 관리하기 좋음
– 캐싱
– 미래에도 안전하다
2.3 문서 모드
뭔말인지 모르겠음. 시간나면 찾아보자.
2.4 noscript 요소
브라우저가 자바스크립트를 지우너하지 않을 때 대체 콘텐츠를 제공하기 위해 만들어짐. 또는 스크립트 지원이 꺼져있을 때.
(덧. 아이폰 설정에는 ‘자바스크립트 끄기’ 이런 설정이 있음)
2.5 요약
앞에서 다 요약한 듯. -_-b