2015-06-08 29 views
12

iframe'in içeriği kaybolmadan hemen önce tetiklenmesi gereken bir olayı yakalamalıyım. Ben bile herhangi bir şansiframe olayından hemen önce iframe

$iframe = $('iframe'); 
$iframe[0].contentWindow.onunload = function() { 
    debugger; 
}; 

olmadan iframe penceresine kendisi bunu bağlayıcı denedi bu

$iframe = $('iframe'); 
$iframe.beforeunload(function() { 
    debugger; 
}); 

VEYA

$iframe = $('iframe'); 
$iframe.unload(function() { 
    debugger; 
}); 

gibi bir şey başarmak için çalışıyorlar

Bu eventhandler'ların hiçbiri aslında benim için

ve neden oldukça kafam karıştı. Iframe'i yeniden yüklemek için .reload()'u iframe'den ve içeriden kullanıyorum, belki farklı bir yöntem kullanmam gerekiyor mu?

+0

Nasıl hakkında: $ iframe = $ ('iframe') [0]; – Lance

+0

Öyleyse: $ iframe.contentWindow.onunload = işlev ... – Lance

+0

Hmm, bu eşdeğerlik olmalıdır: '$ iframe [0] .contentWindow.onunload' – Max

cevap

23

Figured out out! Yeniden yüklemeden sonra contentWindow referansını kaybedeceğini bilmiyordum.

$iframe.load(function() { 
    $iframe[0].contentWindow.onbeforeunload = function() { 
    debugger; 
    }; 
});