[jquery] 여러 $ (document) .ready (function () {…});를 가질 수 있습니다. 섹션?

시작시 많은 기능을 가지고 있다면 모두 하나의 단일 상태에 있어야합니다.

$(document).ready(function() {

또는 여러 진술을 할 수 있습니까?



답변

여러 개를 가질 수 있지만 항상 가장 쉬운 것은 아닙니다. 가독성에 심각한 영향을 미치므로 남용하지 마십시오. 그 외에는 완벽하게 합법적입니다. 아래를보십시오 :

http://www.learningjquery.com/2006/09/multiple-document-ready

이것을 시도하십시오 :

$(document).ready(function() {
    alert('Hello Tom!');
});

$(document).ready(function() {
    alert('Hello Jeff!');
});

$(document).ready(function() {
    alert('Hello Dexter!');
});

이것과 동등한 것을 알 수 있습니다. 실행 순서에 유의하십시오.

$(document).ready(function() {
    alert('Hello Tom!');
    alert('Hello Jeff!');
    alert('Hello Dexter!');
});

$(document).ready블록 내에 정의 된 함수 를 다른 $(document).ready블록 에서 호출 할 수 없다는 점도 주목할 가치가 있습니다 .

$(document).ready(function() {
    alert('hello1');
    function saySomething() {
        alert('something');
    }
    saySomething();

});
$(document).ready(function() {
    alert('hello2');
    saySomething();
}); 

출력은 다음과 같습니다

hello1
something
hello2


답변

여러 개를 사용할 수 있습니다. 그러나 하나의 문서에서 여러 기능을 사용할 수도 있습니다.

$(document).ready(function() {
    // Jquery
    $('.hide').hide();
    $('.test').each(function() {
       $(this).fadeIn();
    });

    // Reqular JS
    function test(word) {
       alert(word);
    }
    test('hello!');
});


답변

예, 여러 블록을 쉽게 가질 수 있습니다. 평가 순서가 예상과 다를 수 있으므로 이들 간의 종속성에주의하십시오.


답변

, 여러 $ (document) .ready () 호출이 가능합니다. 그러나 나는 그들이 어떤 방식으로 처형 될지를 알 수 없다고 생각합니다. (출처)


답변

예 가능하지만 div #mydiv를 더 잘 사용하고 둘 다 사용할 수 있습니다

$(document).ready(function(){});

//and

$("#mydiv").ready(function(){});


답변

예, 완벽하게 괜찮습니다.하지만 이유없이하지 마십시오. 예를 들어 자바 스크립트 파일이 동적으로 생성 될 때 개별 페이지와 별도로 전역 사이트 규칙을 선언하는 데 사용했지만 계속 반복해서 읽으면 읽기가 어렵습니다.

또한 다른 jQuery(function(){});호출 에서 일부 메소드에 액세스 할 수 없으므로
그렇게하고 싶지 않은 또 다른 이유입니다.

이전 window.onload기능을 사용하면 함수를 지정할 때마다 이전 기능을 대체합니다.


답변

그래 넌 할수있어.

여러 문서 준비 섹션은 다른 모듈을 사용하는 동일한 페이지를 다른 모듈로 가져 오는 경우 특히 유용합니다. 이전 window.onload=func선언에서는 호출 할 함수를 지정할 때마다 이전 함수를 대체했습니다.

이제 지정된 모든 기능이 지정된 문서 준비 섹션에 관계없이 대기 / 스택됩니다 (누군가를 확인할 수 있습니까?).