Итак, у меня есть следующий код, который выполняет setInterval до тех пор, пока iframe не будет доступен для записи.
$( '#testdiv').append( $('<iframe id="testiframe"/>') );
var t = setInterval(function(){
if(document.getElementById('testiframe') !== 'undefined'){
clearInterval(t);
$('#testiframe').contents().find('body').append('asd');
}
}, 15);
В основном происходит то, что jQuery создает элемент iframe и загружает его в DOM. Тем не менее, iframe недоступен сразу, поэтому дополнительные вызовы jQuery, которые закодированы, происходят сразу послесловие. С помощью этого фрагмента кода он выполняет простую проверку интервалов до тех пор, пока не будет доступен новый iframe, а затем напишет "asd" на его содержимое.
Я потратил около часа на тестирование различных методов цепочки для создания iframe, но ничего действительно не работает. Все это кажется вопросом времени. Я попробовал $('# testiframe'). Live ('load', function() {}); и это не работает вообще.
У кого-нибудь есть более чистая рекомендация по этому поводу?