특정 조건에서 DOMContentReady 이벤트를 실제로 발생시키지 않기 위해 jQuery ready
핸들러를 바인딩해야하는 상황이 있습니다. 이러한 핸들러는 다양한 include 파일, 플러그인 등 다양한 위치에 바인딩됩니다. 그래서 내 페이지 상단의 스크립트에서 일종의 글로벌 변수를 설정하고 조건을 넣어 모든 $(document).ready()
바인딩 앞에서이 변수를 검사 할 수는 있지만 오히려하지 않을 것입니다.jQuery 준비 핸들러가 실행되지 못하도록 함
이상적으로는 두 가지 중 하나
- (가) 그
.ready()
- 내가 부를 수있는 방법에 호출을 무시하고 그것을 말할 것 포함하기 전에 내가 jQuery 오브젝트에 설정 할 수있는 속성을 찾고 있어요 DOMContentReady가 실행되기 전에 인라인 스크립트에서 문서 끝으로
ready()
핸들러를 바인딩 해제합니다.
명백한 것은 $(document).unbind('ready')
이 아닙니다. 내 생각에 .ready()
은 일반적인 이벤트 바인딩이 아니기 때문입니다.
이 작업을 수행 할 수 있습니까? 그렇다면 어떻게?
막연한 아이디어는 jQuery 프로토 타입을 확장하고 ready()
을 내가 소개 할 새로운 속성을 확인할 수있는 방법으로 대체하는 것입니다. 말이 돼? 당신이 당신의`unbind` 코드를 넣어되는 경우
를 사용해야합니까? 'ready' 함수 앞에 넣으면,'unbind'하지 않아야합니다. 안쪽에 또는'ready' 기능 후에 넣으면. 이미 부름을 받았습니다. 특정 조건이 일치하면'ready' 함수 안에'false'를 반환 할 수 있습니다. – Jashwant
아니요,'$ (document) .ready()'에 대한 호출은'$ (document) .unbind ('ready')에 의해 언 바운드되지 않습니다. 왜 그런지 정확히 모르겠습니다. – Dan
코드를 보여줄 수 있다면 당신을 명확히 할 수 있습니다. Btw, 이미 대답을 찾은 것 같습니다. – Jashwant