[JQUERY] 수 여러 $ (문서) .ready가 (함수 () {...}); 섹션?
JQUERY수 여러 $ (문서) .ready가 (함수 () {...}); 섹션?
해결법
-
1.여러 사람을 가질 수 있지만, 그것은 항상 할 수있는 산뜻한 것은 아니다. 이 심각하게 가독성에 영향을 미칠 것으로,이를 남용하지 않도록하십시오. 그 외에는, 그것은 완벽하게 합법적이다. 을 아래 참조 :
여러 사람을 가질 수 있지만, 그것은 항상 할 수있는 산뜻한 것은 아니다. 이 심각하게 가독성에 영향을 미칠 것으로,이를 남용하지 않도록하십시오. 그 외에는, 그것은 완벽하게 합법적이다. 을 아래 참조 :
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!'); });
그것은 기능이 .ready 블록이 또 다른 $ (문서) .ready 블록에서 호출 할 수 없습니다 일 $ (문서)에 정의 된 것을 주목할 가치가있다, 난 그냥이 테스트를 실행 :
$(document).ready(function() { alert('hello1'); function saySomething() { alert('something'); } saySomething(); }); $(document).ready(function() { alert('hello2'); saySomething(); });
출력했다 :
hello1 something hello2
-
2.여러 사용할 수 있습니다. 하지만 당신은 하나 document.ready 내부뿐만 아니라 여러 기능을 사용할 수 있습니다 :
여러 사용할 수 있습니다. 하지만 당신은 하나 document.ready 내부뿐만 아니라 여러 기능을 사용할 수 있습니다 :
$(document).ready(function() { // Jquery $('.hide').hide(); $('.test').each(function() { $(this).fadeIn(); }); // Reqular JS function test(word) { alert(word); } test('hello!'); });
-
3.예를 쉽게 여러 블록을 가질 수 있습니다. 그냥 당신이 무엇을 기대하지 않을 수 있습니다 평가 순서와 그들 사이의 의존성에주의.
예를 쉽게 여러 블록을 가질 수 있습니다. 그냥 당신이 무엇을 기대하지 않을 수 있습니다 평가 순서와 그들 사이의 의존성에주의.
-
4.네, 여러 $ (문서) .ready () 통화를 할 수 있습니다. 그러나, 나는 그들이이 실행되는 방법으로 알 수 있다고 생각하지 않습니다. (출처)
네, 여러 $ (문서) .ready () 통화를 할 수 있습니다. 그러나, 나는 그들이이 실행되는 방법으로 알 수 있다고 생각하지 않습니다. (출처)
-
5.네, 그것은 가능하지만 당신은 더 나은 사업부의 #mydiv를 사용하고 모두 사용할 수 있습니다
네, 그것은 가능하지만 당신은 더 나은 사업부의 #mydiv를 사용하고 모두 사용할 수 있습니다
$(document).ready(function(){}); //and $("#mydiv").ready(function(){});
-
6.네, 이유없이 그 일을 완벽하게 ok.but을 피입니다. 예를 들어 내 자바 스크립트 파일을 동적으로 생성되었을 때 나는 indivual 페이지보다 별도로 글로벌 사이트 규칙을 선언하는 데 사용하지만 당신은 단지 그것을 통해 일을 계속하는 경우는 읽기 열심히 할 것입니다.
네, 이유없이 그 일을 완벽하게 ok.but을 피입니다. 예를 들어 내 자바 스크립트 파일을 동적으로 생성되었을 때 나는 indivual 페이지보다 별도로 글로벌 사이트 규칙을 선언하는 데 사용하지만 당신은 단지 그것을 통해 일을 계속하는 경우는 읽기 열심히 할 것입니다.
또한 다른 일부 방법에 액세스 할 수 없습니다 jQuery를 (함수 () {}); 요구 그 또 다른 이유는, 그래서 당신은 그렇게 할 싶지 않아.
이전 창로드하면 예전 당신이 함수를 지정된마다 교체합니다하지만.
-
7.그래 넌 할수있어.
그래 넌 할수있어.
당신이 그것을 사용하는 것과 동일한 페이지 떨어져 haging 다른 모듈이있는 경우 여러 문서 준비 섹션은 특히 유용합니다. 이전 위해 window.onload = FUNC 선언을 사용하면 함수를 지정된 모든 시간은 이전을 대체라고합니다.
이제 지정된 모든 기능에 관계없이의 / 스택 (캔 누군가의 확인을?) 대기 그들이에 지정된 준비 섹션을 기록하고 있습니다.
-
8.내가 갈 수있는 더 좋은 방법이라는 기능에 스위치를 넣어 (그 주제에 대한 자세한 내용은이 오버 플로우를 확인)하는 것입니다 생각합니다. 당신은 하나의 이벤트에서 호출 할 수있는 방법입니다.
내가 갈 수있는 더 좋은 방법이라는 기능에 스위치를 넣어 (그 주제에 대한 자세한 내용은이 오버 플로우를 확인)하는 것입니다 생각합니다. 당신은 하나의 이벤트에서 호출 할 수있는 방법입니다.
그래서 같이 :
function firstFunction() { console.log("first"); } function secondFunction() { console.log("second"); } function thirdFunction() { console.log("third"); }
그 방법은 하나의 준비 기능에로드 할 수 있습니다.
jQuery(document).on('ready', function(){ firstFunction(); secondFunction(); thirdFunction();
});
이 의지 출력은 당신을 console.log에 다음과 같은 :
first second third
이 방법은 다른 이벤트에 대한 기능을 다시 사용할 수 있습니다.
jQuery(window).on('resize',function(){ secondFunction(); });
-
9.그것은 법적,하지만 때로는 원하지 않는 동작이 발생할. 모범 나는 MagicSuggest 라이브러리를 사용하고 내 프로젝트의 페이지에 두 MagicSuggest 입력을 추가하고 입력의 각 초기화에 대한 별도의 문서 준비 기능을 사용한다. 맨 처음 입력 초기화했다,하지만 두 번째도 오류를 포기하지 않을, 두 번째 입력은 나타나지 않았다. 그래서, 난 항상 하나 개의 문서 준비 기능을 사용하는 것이 좋습니다.
그것은 법적,하지만 때로는 원하지 않는 동작이 발생할. 모범 나는 MagicSuggest 라이브러리를 사용하고 내 프로젝트의 페이지에 두 MagicSuggest 입력을 추가하고 입력의 각 초기화에 대한 별도의 문서 준비 기능을 사용한다. 맨 처음 입력 초기화했다,하지만 두 번째도 오류를 포기하지 않을, 두 번째 입력은 나타나지 않았다. 그래서, 난 항상 하나 개의 문서 준비 기능을 사용하는 것이 좋습니다.
-
10.당신은 둥지 문서 준비 기능은 내부 HTML 파일을 포함 할 수 있습니다. 여기에 jQuery를 사용하여 예입니다 :
당신은 둥지 문서 준비 기능은 내부 HTML 파일을 포함 할 수 있습니다. 여기에 jQuery를 사용하여 예입니다 :
파일 : test_main.html
<!DOCTYPE html> <html lang="en"> <head> <script src="jquery-1.10.2.min.js"></script> </head> <body> <div id="main-container"> <h1>test_main.html</h1> </div> <script> $(document).ready( function() { console.log( 'test_main.html READY' ); $("#main-container").load("test_embed.html"); } ); </script> </body> </html>
파일 : test_embed.html
<h1>test_embed.html</h1> <script> $(document).ready( function() { console.log( 'test_embed.html READY' ); } ); </script>
콘솔 출력 :
test_main.html READY test_main.html:15 test_embed.html READY (program):4
브라우저 쇼 :
test_embed.html
-
11.당신은 또한 그것에게 다음과 같은 방법을 수행 할 수 있습니다
당신은 또한 그것에게 다음과 같은 방법을 수행 할 수 있습니다
<html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script> $(document).ready(function(){ $("#hide").click(function(){ $("#test").hide(); }); $("#show").click(function(){ $("#test").show(); }); }); </script> </head> <body> <h2>This is a test of jQuery!</h2> <p id="test">This is a hidden paragraph.</p> <button id="hide">Click me to hide</button> <button id="show">Click me to show</button> </body>
이전의 응답은 다른 블록 외부 .ready라는 기능이 단일 .ready 블록 또는 블록 .ready 단일 명명 함수 내에 복수라는 함수를 사용 하였다. .ready 블록 내부의 여러 이름이 기능을 가지고 할 수있는 방법이 있다면 연구하는 동안 나는이 질문을 발견 - 나는 구문이 올바른 가져올 수 없습니다. 나는 마지막으로 그것을 파악하고, 내 테스트 코드를 게시하여 내가 가지고 같은 질문에 대한 답을 찾고 다른 사람을 도움이 될 것으로 기대
from https://stackoverflow.com/questions/1327756/can-you-have-multiple-document-readyfunction-sections by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] jQuery를 마우스 휠 이벤트를 받기? (0) | 2020.10.04 |
---|---|
[JQUERY] JQuery와 선택기에서 DOM 요소를 얻는 방법 (0) | 2020.10.04 |
[JQUERY] 64 기수로 변환 BLOB (0) | 2020.10.04 |
[JQUERY] 종료 날짜는 jQuery로 시작 날짜보다 큰 유효성 것을 (0) | 2020.10.04 |
[JQUERY] jQuery를 함께 바인딩 이벤트를 주문하는 방법 (0) | 2020.10.04 |