http://stackoverflow.com/questions/31634281/iife-inside-document-ready-or-the-other-way-around
(function($) {
// Non-DOM-ready-required code here (scope-safe) ---- (1)
$(function()
//...
// DOM-ready-required code here ---- (2)
//...
});
})(jQuery);
(1) 구역에 이벤트 핸들러를 넣어놓아도, 전혀 안먹었는데, 이유가 이거였네 ..
IIFE 의 영역이 위에서는 non-required 라고만 했지만 실제 dom-ready 이전에 실행되는 영역인 듯 ...
지금까지 살펴본 바에 의하면, IIFE 는 모듈화를 위한 도구라고 생각하면 될 것 같다.
return 으로 변수나 함수(도 변수지만) 를 외부로 오픈하는 역할을 하는 건 좀 놀랍기도 했다.
아무튼, 이벤트 핸들러를 등록하려면, 등록학 object 가 있어야 하는데,
그러려면, image load 까지는 아니더라도, dom-ready 는 되어야 되는데,
그러려면, $(document).ready() == $(function(){}) == document.ready(function(){}) 에서 처리해야 한다.
물론, window.onload() == $(window).onload() 에서 이벤트 핸들러를 등록해도 되지만, 굳이 이미지 로드까지 기다려야 할 이유는 없다.
'개발 > 웹' 카테고리의 다른 글
HTML5_CSS3 정석 (0) | 2022.03.16 |
---|---|
eclipse javascript 멈춤 현상 (0) | 2022.03.11 |
javascript garden 번역본 (0) | 2017.10.24 |
javascript 내장함수와 closure [펌] (0) | 2017.07.04 |
spring mvc mocking 사용시 @modelattributes (0) | 2016.12.02 |
댓글