2011-09-07 3 views
0

가능합니까? 로드 중 새 기능 호출 전화

var win = window.open(url); 

win.func = function() { 
    win.someFunc(); 
    // ... 
} 

은 그 때 나는 win의 스크립트와 DOM가 완전히로드 될 때 func가 호출하려는. jQuery 솔루션도 좋을 것이다.

+0

그 즉시 크로스 사이트 스크립팅 문제가 발생할하지 않을까요? – Mat

+0

흠 .. 예를 들면? –

+0

열려있는 창에 JavaScript를 삽입 할 수 있습니다. 이것이 바로 크로스 사이트 스크립팅의 정의입니다. 대상 페이지가 "너"인 경우에는 쿠키가 필요하거나 매개 변수를 사용하거나 그 밖의 다른 것을 사용하지 않아도됩니다. – Mat

답변

1

window.open으로로드하는 HTML에서 이것을 사용하지 않는 이유는 무엇입니까?

jQuery(document).ready(function() { 
    someFunc(); 
}); 

UPDATE : 당신이 TJHeuvel이 명시된 바와 같이 someFunc를 호출 오프너 창에서 준비 함수 호출 함수에서, 당신이 할 수있는 것보다 매개 변수를 전달해야합니다.

아니면 메인 창에서 "글로벌"변수를 가질 수 있습니다, 그건 당신이

window.opener.myparameters.param1; 
window.opener.myparameters.param2; 

이 myparameters이 PARAM1 및 pram2 필드가 있다고 가정처럼 액세스 할 수 있습니다() 당신의 someFunc보다 당신의 매개 변수를 보유하고 있습니다.

UPDATE : 예

myparameters = new Object(); 
myparameters.param1 = "1"; 
myparameters.param2 = "2"; 

또는

myparameters = {param1: "1", param2: "2"}; 
+0

아, 죄송 합니다만, 부모 창이 매개 변수를 자식에게 전달해야한다는 점을 잊어 버렸습니다. –

0

하위 창에서 상위 함수 onload를 호출하도록 할 수 있습니다. 따라서 :

window.onload = function() 
{ 
window.opener.ChildLoaded(this); 
}