2012의 게시물 표시

iframe을 통해서 다른 파일 HTML접근하는 방법

function load(src,callback){ var f = document.createElement('iframe'); f.src = src; f.id = 'test123123'; f.width = 0; f.height = 0; document.body.appendChild(f); var w = document.getElementById(f.id).contentWindow; w.onload = function(e){ var fn = new Function('w','with(w){return '+ callback.toString() + '}'); fn(w)(); setTimeout(function(){document.body.removeChild(f)},15); } } load('3.html',function(){alert(document.body.innerHTML)});

이벤트 핸들링 DOM0과 DOM1활용하기

<html> <head></head> <body>Test <input type='button' onclick='(function(el){eventHandler.apply(el,arguments)}(this))' value='click' /> <script> eventHandler = function(){ this.onclick = function(e){ console.log(e); }; this.click(); }; </script> </body> </html> 대게 보통 onclick을 통해서 html 에서 해당 함수를 넣어 마우스 클릭시 이벤트를 생성하는 소스코드는 비록 추천하는 개발방식이 아닌데도 엄청 많이 사용되고 있습니다. 그래서 혹시 event 객체를 얻기 위해서 고생을 해야 하는데 위에서 DOM0을 DOM1로 변경해서 event 객체를 얻었습니다.  사파리 IE에서는 window.event객체를 얻어오면 되긴 하지만 이는 표준이 아닌라서 파폭에서는 작동을 안한다는 문제가 있죠.