웹 페이지의 특정 div가 로드된 후 동적으로 자바스크립트를 도입해야 하는 경우가 있습니다. IE의 솔루션은 다음과 같습니다.
인용된 내용은 다음과 같습니다. 암호: newjs.onreadystatechange = 함수( ) { if (newjs.readyState == 'loaded' ) { // 준비가 된! } } newjs.onload = 함수( ) { // 준비가 된! } |
onload 및 onreadystatechange 이벤트가 주로 사용됩니다. 이를 활용하면 외부 CSS를 동적으로 로드할 수도 있습니다. 다음은 Ie/firefox 모두에 적합한 작성 방법입니다.
인용된 내용은 다음과 같습니다. 암호: var CSS; 함수 include_css(css_file) { var html_doc = document.getElementsByTagName( 'head' ) [ 0 ]; CSS = document.createElement( '링크' ); css.setAttribute('rel', 'stylesheet' ); css.setAttribute( '유형', 'text/css' ); css.setAttribute('href', css_file); html_doc.appendChild(css); // 경고 상태 변경 CSS.onreadystatechange = 함수( ) { if (css.readyState == 'complete' ) { 경고( 'CSS onreadystatechange 실행됨' ); } } CSS.onload = 함수( ) { 경고( 'CSS 온로드 실행됨' ); } 거짓을 반환; } var.js; 함수 include_js(파일) { var html_doc = document.getElementsByTagName( 'head' ) [ 0 ]; js = document.createElement( '스크립트' ); js.setAttribute('type', 'text/javascript' ); js.setAttribute('src', 파일); html_doc.appendChild(js); js.onreadystatechange = 함수( ) { if (js.readyState == '완료' ) { 경고( 'JS onreadystate 실행됨' ); } } js.onload = 함수( ) { 경고( 'JS 온로드 시작됨' ); } 거짓을 반환; } |