Jquery. Work with hidden iframes. Interaction between parent window and child iframes

Во время веб-разработки приходится решать различного рода задачи, во время решения некоторых из них прибегают к использованию так называемых фреймов - <iframe></iframe>
Внутри этих фреймов можно либо создать свои дополнительные DOM-элементы, например - добавить формы:

$(document).ready(function() {

    $('body').after('<iframe id="testIframe" width="1" height="1" align="center"></iframe>');
   
    $('#testIframe').load(function() {
        var form =     '<form id="testForm" action="test.php" method="post">' +
                        '<input type="text" name="testInput" value="testValue"/>' +
                    '</form>';
        $(this).contents().find('body').html(form);
    });
   
});


Здесь стоит оговориться: в Opera и Chrome этот пример не прокатит - форма так и не будет добавлена, нужно сразу же после создания фрейма добавлять свою форму (видимо это связано с тем, что в данном случае внутри фрейма документ пуст, ведь мы не указали через тег src на источник, поэтому метод $('#testIframe').load() не отработает должным образом)
Либо загружать другие документы. При этом не засоряется текущая структура документа. В большинстве случаев эти фреймы делают скрытыми, скрывая от глаз пользователей побочную работу веб-приложения. Но при этом встает вопрос: как можно общаться с дочерними фреймами. Если бы повсеместно использовался HTML5, то вопрос этот бы отпал, так как там есть методы для этих целей (window.postMessage). Но в настоящее время ситуация другая. Можно воспользоваться вот таким нехитрым способом. Во-первых, нам понадобится библиотека - jquery и дополнительный плагин к нему - jquery.form. А далее внутри создать форму, которая может обращаться к серверу. Перед отправкой данных на сервер необходимо передать эту форму методу упомянутого выше плагина ajaxForm. Этот метод позволит нам создать обработчик ответов сервера, что я и сделал, к тому же он доступен родительскому окну, точнее - документу. Так достигается своего рода общение между родительским документом и дочерними скрытыми фреймами:

$('#testButton').click(function(){
    var ref = $('#testIframe').contents().find('#testForm');
    // обработчик на стороне дочернего фрейма
    ref.ajaxForm(function(response) {
        if (response == 'catched') {
            // взаимодействие с "родителем"
            $('#result').html('<p>from testIframe1</p>');
        }
    });
    ref.submit();
}); 


В данных примерах я использую метод $('#testIframe').load(), который удобен тем, что в нем можно использовать свой callback, который будет вызываться только после полной загрузки документа внутри этого фрейма.