jQuery.ready()
안에 모든 자바 스크립트 호출을 배치하여 액세스하기 전에 DOM이 완전히로드되었는지 확인하십시오. 그러나 함수 정의 (자신이 작성한 함수 정의)의 경우, 해당 함수를 배치하기 전에 (함수를 호출하기 전에) 배치하는 것이 가장 좋습니다. <body>
의 시작 부분에? 또는 <body>
끝에요? 아니면 jQuery.ready()
안에 있습니까? 또는 그것은 단순히 중요하지 않습니다? 감사.문서에서 javascript 함수 정의를 배치 할 위치는 어디입니까?
답변
ready() 함수 안에 함수를 두지 마십시오.
준비 호출 위에 선언해야하며 이상적으로 모든 j는 html의 맨 아래에서 처리되는 것이 이상적입니다.
감사합니다. 함수 ** 정의 ** 인 경우 html의 맨 위나 맨 아래에 배치하면 어떤 차이가 있습니까? – tamakisquare
스크립트 요소는 문서 순서로 처리됩니다. 함수 선언이 하나의 스크립트 요소에 있고 호출하는 코드가 다른 스크립트 요소에있는 경우 함수를 호출 할 때 선언을로드해야합니다. – RobG
@Kai Qing - document.ready 핸들러에서 함수를 선언하지 않는 이유는 무엇입니까? 그것들이 서로에 의해서만 호출되고 다른 이벤트 핸들러들에 의해 document.ready 내에서 셋업된다면 그것은 모든 것을 글로벌 범위 밖으로 유지하는 이점과 완벽하게 잘 작동 할 것입니다. 물론 document.ready 핸들러 외부의 코드에서 호출해야하는 함수도 외부에서 선언해야합니다. 어쩌면 당신은 이것을하지 말라는 좋은 이유가 있습니다. 그러나 그것이 무엇인지 설명하지 않으면 어떻게 알 수 있습니까? – nnnnnn
JavaScript를 본문의 맨 위나 맨 위에 배치하면 jQuery 준비가 필요합니다. IF DOM의 일부를 사용합니다. 바로 가기로, 당신은 너무처럼 $
에 코드를 전달할 수 있습니다
$(function(){
$("#domID").method();
});
그러나, 당신은 하단에 스크립트를 넣어이 모든 혼란을 포기 할 수 있습니다. 브라우저는 HTML을 위에서 아래로 읽습니다. domID
에 액세스하는 스크립트가 ID가 domID
인 DOM 요소 아래에 표시되면 정상적으로 작동합니다. 위의 코드 스 니펫은 다음을 통해 더욱 단순화 될 수 있습니다.
$("domID").method();
참고로 항상 그런 것은 아닙니다. 캔버스 요소에 즉시 액세스 할 수없는 것으로 나타났습니다. $
또는 $.ready
을 사용하는 것이 더 안전 할 수 있습니다. 그런 다음 DOM 및 JavaScript가로드되는 방식에 익숙해지면 제거하십시오.
- 1. 일반 앱 메소드를 배치 할 위치는 어디입니까?
- 2. 감사 필드를 배치 할 위치는 어디입니까?
- 3. Laravel에 메뉴 로직을 배치 할 위치는 어디입니까?
- 4. Application.Current.Dispatcher.BeginInvoke - Try & catch를 배치 할 위치는 어디입니까?
- 5. 함수 문서를 intellisense에 표시 할 위치는 어디입니까?
- 6. JavaScript에서 대화 형 객체를 배치 할 위치는 어디입니까?
- 7. 정렬 후 요소 배치 위치는 어디입니까?
- 8. 우리의 솔루션에 엔티티 프레임 워크를 배치 할 위치는 어디입니까?
- 9. Eclipse에서 실행되도록 외부 아카이브를 배치 할 위치는 어디입니까?
- 10. 캡슐화 된 함수를 다른 스크립트에 배치 할 위치는 어디입니까?
- 11. (Cocos2d) 입자 시스템을 사용할 때 autoRemoveOnFinish를 배치 할 위치는 어디입니까?
- 12. 미리 생성 된 직렬화 어셈블리를 배치 할 위치는 어디입니까?
- 13. 구성 요소 기반 아키텍처에 인터페이스를 배치 할 위치는 어디입니까?
- 14. 관리 세션을 MVC 패턴에 배치 할 위치는 어디입니까?
- 15. Android에 타사 푸시 코드를 배치 할 위치는 어디입니까?
- 16. 모델을 레일스에서 반환하는 데 기본 값을 배치 할 위치는 어디입니까?
- 17. listview에 대해 "새 레코드 추가"항목을 배치 할 위치는 어디입니까?
- 18. 리포지토리 패턴 : 여러 엔터티에 닿는 기능을 배치 할 위치는 어디입니까?
- 19. Android 다른 테마에 대해 다른 아이콘을 배치 할 위치는 어디입니까?
- 20. 프로젝트 구조에서 뷰 특정 로직을 배치 할 위치는 어디입니까?
- 21. 매개 변수에서 '&'를 함수에 배치 할 위치는 어디입니까?
- 22. SPRY를 사용할 때 HTML 5 요소를 배치 할 위치는 어디입니까?
- 23. 도메인 모델에 기술 관련 정보를 배치 할 위치는 어디입니까?
- 24. 니블레스 AppKit 프로젝트에서 뷰 초기화를 배치 할 위치는 어디입니까?
- 25. 앱에 전역 인 엔터티를 배치 할 위치는 어디입니까?
- 26. MVC에서 선택 사항을 볼 수있는 상태를 배치 할 위치는 어디입니까?
- 27. 인터페이스를 선언 할 위치는 어디입니까?
- 28. MVC : 뷰를로드 할 위치는 어디입니까?
- 29. 저장소를 정의 할 위치는 어디입니까?
- 30. swffit, 코드를 삽입 할 위치는 어디입니까?
_ "사실상 동일한 _script 요소 또는 동일한 함수 범위 내에서 함수 선언이"호이스트 "되었기 때문에 호출되기 전에 함수 선언이 필요하지 않습니다. 즉, JS 인터프리터는 블록 시작 부분에 선언 된 것처럼 처리합니다. – nnnnnn
@nnnnnn - 유용한 정보가 여기에 있습니다. js에 초보자로서, 나는이 같은 지식을 정말로 바르게 평가한다. 감사! – tamakisquare