2012-05-14 5 views
2

일부 iframe이 포함 된 div 요소가 있습니다. 때로는 그 iframe을 파괴하고 새로운 iframe을 만듭니다. 그러나 언제나 (나중에 추가 된)로드가 완료되면 언제나 알 필요가 있습니다. 다음 코드는 작동하지만 디버그 콘솔에 아무 것도 기록되지 않는다고 생각했습니다. 어떤 도움이 필요합니까?라이브 iframe 페이지 감지 onload

// doesn't work 
    $('#viewport').on('load', 'iframe', function() { 
    console.log('LOADED!'); 
    return true; 
    }); 

    // doesn't work either 
    $('#viewport').on('ready', 'iframe', function() { 
    console.log('LOADED!'); 
    return true; 
    }); 
+0

' 로드 '는 이미지에만 해당하는 것입니까? – gdoron

+1

nap http://api.jquery.com/load-event/ Windows, 프레임, iframe에도 사용할 수 있습니다. d like – pistacchio

+1

다음과 같이 시도하십시오 : $ ('# viewport'). on ('load', function() { console.log ('LOADED!'); return true; }); ' – gdoron

답변

0

이벤트를 추가하기 전에 프레임로드가 완료되었을 수 있습니다.

DOM에 이벤트를 추가하기 전에 이벤트를 추가하십시오.

var iframe = document.createElement("iframe"); 
// set iframe properties 
$(iframe).on('ready', 'iframe', function() { 
    console.log('LOADED!'); 
}); 
document.body.appendChild(iframe); 
0

저는 동적 인 iframe을 사용할 수 없다고 확신합니다.

참고 : JQuery와 사이트에서 (사용되지 않는 load() 기능이란 이름으로 .live()와 .delegate() 메소드는 iframe 대응의로드 이벤트를 감지하는 데 사용할 수 없습니다로드 이벤트가 제대로 거품을하지 않습니다. 부모 문서와 event.target은 이벤트 위임을 할 필요가 파이어 폭스, IE9 또는 크롬에 의해 설정되지 않습니다.

가 가

내가 비슷한 프로젝트 중 하나, 동작하지 않습니다.

관련 문제