이는 보다 널리 지원되는: '또는' 도쿠망.론로이드 빈다우드로 로이드 '?'
지금 일부 브라우저에서는 역할을 대신할 수 '와' 도쿠망.론로이드 화재 때 DOM 도 준비합니다.
'도쿠망.론로이드'
'빈다우드로 로이드' 가장 널리 지원되는 것으로 보인다. 실제로 일부 '의 가장 최신 브라우저에서는 %s/dbase/ext_table. 감지에서 재장착하여 도쿠망.론로이드 빈다우드로 로이드' 을 (를) ''.
많은 사람들이 이 라이브러리를 사용하기 시작하고, 브라우저 지원 문제를 이유는 가장 많다 (예: jquery 문서에 대한 확인 등 준비 중인 처리할 수 있습니다.
$(document).ready(function() { /* code here */ });
$(function() { /* code here */ });
_
이를 위해 있다. '빈다우드로 로이드' vs '브로디드로 로이드':
>. 코딩포럼즈 귈이예요 비슷한 질문에 대해 물었다. >. 이에 대해 'over' 사용 '빈다우드로 로이드 뒤로를 브로디드로 로이드'. 이 >. 그 결과 된 것 같다 '' 빈다우드로 로이드 콩지름에 어렵기 때문이다. >. 좋은 분류할 수 구조 작업에서.
일반 가설로는 # 39 의 창은 document& 빈다우드로 로이드 화재 때 도쿠망.론로이드 프레젠테이션입니다 준비 및 화재 때 DOM 진단트리는 (수정표시와 코드를 기반으로 작성된 문서 내에) 는 완료됨으로 .
Dom 트리 이벤트 javascript 를 통해 가입할 수 있는 이상적인 오프스크린 조작 거의 없는 cpu 사용량, 나아가 . 이에 반하여, ' "' 빈다우드로 로이드" 아직 시간이 오래 걸릴 수 있는 여러 외부 자원, 불을 때 요청되어야 해석되고 로드됨.
테스트 scenario:*
<script language="javascript">
window.tdiff = []; fred = function(a,b){return a-b;};
window.document.onload = function(e){
console.log("document.onload", e, Date.now() ,window.tdiff,
(window.tdiff[0] = Date.now()) && window.tdiff.reduce(fred) );
}
window.onload = function(e){
console.log("window.onload", e, Date.now() ,window.tdiff,
(window.tdiff[1] = Date.now()) && window.tdiff.reduce(fred) );
}
</script>
이 결과 비헤이비어를 크롬 v20 (아마도 최신 브라우저) 의 관측 가능한.
코드 위에 빼앗아 이 project& # 39 의 코드 ("'index. html"' 와 '' 키보아드리아스 "').
[이벤트 핸들러도 창 객체에는] [3] 목록은 매든 문서를 참조하십시오.
[3]: # Event_handlers https://developer.mozilla.org/en-us/docs/dom/window
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", function(event) {
// - Code to execute when all DOM content is loaded.
// - including fonts, images, etc.
});
</script>
< hr>; 3월 2017년 '#' 업데이트
window.addEventListener('load', function() {
console.log('All assets are loaded')
})
< hr>;
$(window).on('load', function() {
console.log('All assets are loaded')
})
< hr>; 행운을 빕니다.
[구문 분석 HTML 문서 - 및끝] [1] 에 따르면,
이 브라우저는 HTML 소스 및 분석하고 런입니다 우회된 스크립트입니다.
At the 'a' '은' 모든 HTML 문서를 동콘텐트로데트 파견 때 설정되었습니다 실행하십시오 해석되고 있다. 거품 (버블) 를 '윈도' 이벤트.
자원 (같은 이미지로) 가 브라우저 로드되는지 지연입니다 로드 이벤트.
At the 'a' 윈도 '로드' 이벤트가 전달됩니다.
따라서 실행 순서가 될 것입니다.
1 단계 '의' 윈도 '에서' 이벤트 리스너에 캡처하기 동콘텐트로데트. '2' 의 '문서' 이벤트 리스너에 동콘텐트로데트. '윈도' 에서 '버블' 의 3 단계 이벤트 리스너에 동콘텐트로데트. 4. '의' 윈도 '이벤트 리스너에 로드' ('onload' 이벤트 핸들러 등)
<! - begin 스니핏: js 숨기십시오: 거짓값 콘솔: 진정한 바벨. > 거짓값 -;
window.addEventListener('DOMContentLoaded', function() {
console.log('window - DOMContentLoaded - capture'); // 1st
}, true);
document.addEventListener('DOMContentLoaded', function() {
console.log('document - DOMContentLoaded - capture'); // 2nd
}, true);
document.addEventListener('DOMContentLoaded', function() {
console.log('document - DOMContentLoaded - bubble'); // 2nd
});
window.addEventListener('DOMContentLoaded', function() {
console.log('window - DOMContentLoaded - bubble'); // 3rd
});
window.addEventListener('load', function() {
console.log('window - load - capture'); // 4th
}, true);
document.addEventListener('load', function(e) {
/* Filter out load events not related to the document */
if(['style','script'].indexOf(e.target.tagName.toLowerCase()) < 0)
console.log('document - load - capture'); // DOES NOT HAPPEN
}, true);
document.addEventListener('load', function() {
console.log('document - load - bubble'); // DOES NOT HAPPEN
});
window.addEventListener('load', function() {
console.log('window - load - bubble'); // 4th
});
window.onload = function() {
console.log('window - onload'); // 4th
};
document.onload = function() {
console.log('document - onload'); // DOES NOT HAPPEN
};
끝 - < 스니핏 >;!
[1]: https://www.w3.org/TR/html5/syntax.html # 및끝
Body onload 에, 크롬, 빈다우드로 로이드 다르다 = 반면, ',' < " ", 이들은 모두 같은 > 파이어폭스 (버전 35.0) 및 IE (버전 11).
그 다음에 의해 스니핏 살펴보았으므로 수 있습니다.
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!--import css here-->
<!--import js scripts here-->
<script language="javascript">
function bodyOnloadHandler() {
console.log("body onload");
}
window.onload = function(e) {
console.log("window loaded");
};
</script>
</head>
<body onload="bodyOnloadHandler()">
Page contents go here.
</body>
</html>
그리고, 창 loaded" " 모두 볼 수 있습니다. (이 제품은 우선) 와 " 바디입니다 onload"; 크롬 (chrome 에서 콘솔이군요. 하지만, 그냥 " 바디입니다 onload" 볼 수 있습니다. firefox 에서 및 IE. () ',' 빈다우드로 로드리토스트링 경우 " 실행하십시오 ". ie 의 콘솔에 있는 &. FF 볼 수 있습니다.
>. 함수 ()}, {브로디온로드핸들러 " " onload (이벤트).
즉, 함수 (e) = " 할당에서는 빈다우드로 로이드 .". 덮어쓰여집니다.
'' 이 '수' 와 '오노 로이드 빈다우드로 로이드 shortcuts 도쿠망.보디드로 로이드' 와 '도쿠망.보디스의 눈로이드'
'모든 것 같다' '와' onload 도쿠망.론로이드 처리기에서 예약되어야 단 한번도 트리거됨 html 태그
& # 39, & # 39 onload ',' 문서 - >. 진정한