>웹 프론트엔드 >JS 튜토리얼 >JQuery_jquery에서 $.Ready() 분석

JQuery_jquery에서 $.Ready() 분석

WBOY
WBOY원래의
2016-05-16 18:39:24979검색

$(document).Ready() 메소드 VS OnLoad 이벤트 VS $(window).load() 메소드
JQuery를 접하게 되면 일반적으로 가장 먼저 배우는 것은 이벤트를 시작할 시기입니다. 오랫동안 페이지가 로드된 후 발생하는 이벤트는 "Body"의 Onload 이벤트에 로드되었습니다.

Body의 Onload 이벤트와 JQuery의 Ready 메서드에 비해 단점이 많습니다. 예를 들면 다음과 같습니다. 🎜>
1. 여러 기능을 로드할 때 발생하는 문제

Onload 이벤트에 이런게 있는데 보기 흉하네요... JQuery에서는 여러 개의 JQuery.Ready() 메서드를 사용할 수 있는데, 순서대로 실행됩니다

2. 코드와 내용이 분리되지 않습니다
. 말할 것도 없이 역겹네요-.-!!

3. 실행 순서가 다릅니다
Body.Onload 이벤트의 경우 페이지 콘텐츠가 모두 로드될 때까지 실행되지 않습니다. . 내 말은 사진, 플래시 등을 포함한 모든 콘텐츠입니다. 페이지에 이러한 콘텐츠가 많으면 사용자는

$(문서)를 오래 기다리게 됩니다. Ready() 메서드를 사용하면 이 메서드는 페이지의 모든 DOM만 추가합니다. 로딩이 완료된 후에 실행되므로 웹페이지 속도가 크게 향상됩니다.

그러나 확대와 같은 일부 특수 애플리케이션의 경우에는 가능합니다. 사진에서 벗어나 사진을 자르는 것입니다. 웹 페이지의 모든 콘텐츠가 로드된 후에 실행해야 합니까? $(window).load() 메서드를 사용하는 것이 좋습니다. 이 메서드는 페이지의 모든 콘텐츠가 로드될 때까지 실행되지 않으며 OnLoad 이벤트의 단점이 없습니다. >

코드 복사



코드는 다음과 같습니다.

$ (window).unload(function() { alert ("good bye"); }) 위 코드는 페이지가 닫힐 때 실행됩니다. >모든 DOM이 로드되기 전에 JS 코드 실행
이 방법은 디버깅할 때 제가 가장 좋아하는 방법입니다. 가끔 개발할 때도 이 방법을 사용합니다.




코드를 복사합니다.


코드는 다음과 같습니다.


예, 삽입합니다. js 코드를 js 클로저 형태로 본문에 삽입합니다. 물론, 이 방법으로 js 코드를 직접 삽입할 수도 있습니다.




코드 복사


코드는 다음과 같습니다.

test">이것이 콘텐츠입니다

alert($("#test").html());//콘텐츠를 표시할 수 없습니다


this is the content




위의 두 단락 코드, 두 번째 코드는 현재 코드 이전의 DOM만 해석할 수 있으며, 테스트가 구문 분석된 DOM 수에 존재하지 않으므로 두 번째 코드가 올바르게 표시될 수 없습니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:ExtJS_extjs 아래 그리드의 일부 속성에 대한 설명다음 기사:ExtJS_extjs 아래 그리드의 일부 속성에 대한 설명

관련 기사

더보기