2017-10-18 4 views
0

사용자가 홀 페이지에서 클릭하는 위치를 캡처하려고하지만 iframe 내부의 iframe에서 캡처하려고합니다.두 번째 레벨에서 루트 문서 선택 iframe

기본적으로 사용자가 두 번째 iframe에서 첫 번째 iframe을 클릭하는 위치를 제어 할 수 있지만 루트 문서를 클릭하는 위치는 제어 할 수 없습니다.

나는 거의 모든 것을 시도했지만 답을 찾을 수 없습니다. 여기

내 실제로 사용 자바 스크립트입니다 : iframe을 같은

문맥
$(window, window.parent.document).document.click(function(event) { 
    alert(event.target.nodeName); 
}); 

, 내가 사용 쉐도우 내 목적은 사용자가 이미 그 자체로 외부 shadowboxes

+0

그리고 상위 페이지와 중첩 된 iframe 안에있는 문서는 모두로드됩니다. 같은 기원 ...? – CBroe

+0

@CBroe 예. 동일한 도메인의 모든 사용자가 3 개의 파일 모두에 액세스 할 수 있습니다. –

+0

'$ (window) .document' 자체는 이미 정의되지 않은 값을 반환합니다. 먼저 jQuery 객체의 참조를 해제하여'DOM 버전 '을 가져와야합니다. 윈도우,'$ (윈도우) [0] .document'. 그냥'$ (parent.document, top.document) .click()'을 사용할 수 없습니까? 그게 내 가장 똑바로 앞으로 방법이 될 것 같다 – CBroe

답변

1

$(window).document의 수익을 클릭 할 때 제어하는 ​​것입니다 정의되지 않은, 당신은 당신이 간단하게 사용할 수 있습니다, 윈도우의 "DOM 버전"을 얻기 위해 첫번째 참조를 해제하는 $(window)[0].document

를 jQuery 오브젝트를 필요로하지만 밝혀 것이다 $(parent.document, parent.parent.document).click()
그것은 또한 나에게 가장 똑 바른 앞으로 방법 인 것처럼 보인다.

(이유는 모르겠지만, 항상 최상위 창 인스턴스이므로, iframe-inside-iframe 내에서 parent.parent.document ...과 같아야합니다. 그렇지 않으면 더 있습니다.) 프레임, 또 다른 레벨? 어쨌든 작동하는 것이 있다면 중요하지 않습니다.)