$(function () {}) 및 $(window).on('load', function() {})의 차이
10860 단어 jQueryJavaScript
이 부근의 차이를 총결하였다.
유형
jQuery의ready와 js에는 예로부터 애용된 onload가 있습니다.
ready
$(function(){
alert('Hello');
});
//または
$(document).ready(function() {
alert('Hello');
});
//または
jQuery(function() {
alert('Hello');
});
//または
jQuery(document).ready(function(){
alert('Hello');
});
//JavaScript
document.addEventListener('DOMContentLoaded', function(){
alert('Hello');
}, false);
jQuery의 작법은 생략된 것이기 때문에 어떤 작법을 써도 마찬가지입니다.load
$(window).on('load',function(){
alert('Hello');
});
//または
$(window).load(function(){
alert('Hello');
});
//JavaScript
window.onload = function(){
alert('Hello');
}
언제 실행
ready
DOM 트리 구축이 완료되면 수행됩니다.
load
이미지, 애니메이션 등 관련 데이터의 모든 읽기가 끝난 후에 실행됩니다.
그러니까
ready는 이미지 등을 표시하기 전에 실행하고load는 이미지 등을 표시한 후에 실행합니다.
그럼 언제 어느 것을 쓰는 것이 좋을까요?
[ready]
[load]
다중 실행
여러 가지 묘사를 할 때, 대부분의 경우 특별히 신경 쓸 필요가 없다.
모두 집행하다.
단, 아래 내용만 실행하고 마지막으로 기술한 내용만 실행합니다.
window.onload = function(){
alert('javascript1');
}
window.onload = function(){
alert('javascript2');
}
window.onload = function(){
alert('javascript3');
}
javascript3만 표시됩니다.시원시원하다
아래와 같은 상황에서 어떤 순서로 표시합니까?
$(window).on('load',function(){
alert('jq_on_load1');
});
window.onload = function(){
alert('js_onload1');
}
$(function(){
alert('jq_ready1');
});
document.addEventListener('DOMContentLoaded', function(){
alert('js_ready1');
}, false);
$(window).load(function(){
alert('jq_load1');
});
$(window).load(function(){
alert('jq_load2');
});
$(window).on('load',function(){
alert('jq_on_load2');
});
window.onload = function(){
alert('js_onload2');
}
$(function(){
alert('jq_ready2');
});
document.addEventListener('DOMContentLoaded', function(){
alert('js_ready2');
}, false);
다음 순서로 표시됩니다.텍스트 표시
jq_ready1
jq_ready2
js_ready1
js_ready2
이미지 표시
jq_on_load1
jq_load1
jq_load2
jq_on_load2
js_onload2
※ js_onload1이 표시되지 않습니다.
경품
DOM 트리란 무엇입니까?
DOM(Document ObjectModel)은 프로그램에서 HTML 문서 또는 XML 문서를 활용하는 데 사용되는 API입니다.
DOM은 HTML 문서 또는 XML 문서를 객체의 트리 컬렉션으로 처리합니다.
그것을'DOM 트리'라고 합니다.
DOM 트리의 각 객체를 노드라고 합니다.
JavaScript에서는 이 DOM을 사용하여 페이지를 다시 읽지 않고 페이지의 일부를 덮어쓰거나 스타일을 변경할 수 있습니다.
이 사이트에서는 DOM 트리를 시각화할 수 있습니다.
domtree
Reference
이 문제에 관하여($(function () {}) 및 $(window).on('load', function() {})의 차이), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mimoe/items/74cb3a01a30162759fdd텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)