>  기사  >  웹 프론트엔드  >  스크립트가 로드되었는지 확인하는 js 코드_javascript 기술

스크립트가 로드되었는지 확인하는 js 코드_javascript 기술

WBOY
WBOY원래의
2016-05-16 18:04:481054검색
코드 복사 코드는 다음과 같습니다.

if(this.isIE) {
js. onreadystatechange=function (){if(js.readyState=="loaded" || js.readyState=="complete") callback();}
}else{js.onload=function(){callback(); }}
js.onerror=function(){alert('Not Found (404): ' src)}//chrome


JS는 스크립트가 로드됨

'주문형 로딩' 요구사항에서 스크립트가 로드되면 콜백 함수가 반환된다고 판단하는 경우가 많습니다. 그렇다면 스크립트가 로드되었는지 어떻게 판단해야 할까요?
onload를 사용하여 로드된 JS 객체(js.onload)를 확인할 수 있습니다. 이 방법은 Firefox2, Firefox3, Safari3.1 및 Opera9.6 브라우저에서 잘 지원되지만 IE6 및 IE7에서는 지원되지 않습니다. 국가를 저장하는 곡선 - IE6, IE7 js.onreadystatechange를 사용하여 각 상태 변경(일반적으로 로드 중, 로드됨, 대화형, 완료)을 추적할 수 있습니다. 반환 상태가 로드되거나 완료되면 로드가 완료되고 콜백이 완료되었음을 의미합니다. 함수가 반환됩니다.
readyState 상태에 대해서는 추가 설명이 필요합니다.
Interactive 상태에서는 사용자가 상호작용에 참여할 수 있습니다.
Opera는 실제로 js.onreadystatechange를 지원하지만 IE의 상태와는 매우 다릅니다.
구체적인 구현 코드는 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.

function include_js(file ) {
var _doc = document.getElementsByTagName('head')[0]
var js = document.createElement('script')
js.setAttribute('type) ', 'text/javascript');
js.setAttribute('src', file)
_doc.appendChild(js)
if (!/*@cc_on!@*/0); //IE가 아닌 경우
//Firefox2, Firefox3, Safari3.1, Opera9.6 지원 js.onload
js.onload = function () {
alert('Firefox2, Firefox3, Safari3.1, Opera9.6 지원 js.onload');
}
} else {
//IE6, IE7 지원 js.onreadystatechange
js.onreadystatechange = function () {
if (js. ReadyState == '로드됨' || js.readyState == '완료') {
alert('IE6, IE7 지원 js.onreadystatechange')
}
}
}
return false;
}
//실행 함수
include_js('http://www.jb51.net/jslib//jquery/jquery.js')
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.