как узнать, когда DOM iFrame снова готов после изменения его содержимого? - PullRequest
0 голосов
/ 12 октября 2011

Я пишу аддон Firefox, используя jquery.Я добавил iFrame на страницу и заполнил ее другой страницей (разрешено согласно той же политике orign).

$('#globalContainer').append('<iframe id="reusable_iframe" src="" width="90%" height="400" name="reusable_iframe"></iframe>');
//....
$('#reusable_iframe').attr('src', link);
//...
var link = $('#reusable_iframe').contents().find(HTMLclass).eq(position).find(searchBy).attr('href');

Проблема в том, что DOM внутри iFrame не завершил загрузку до моего доступа.Однако, когда я добавляю предупреждение, оно работает без проблем:

$('#globalContainer').append('<iframe id="reusable_iframe" src="" width="90%" height="400" name="reusable_iframe"></iframe>');
//....
$('#reusable_iframe').attr('src', link);
//...
alert("wait a sec"); //<-------------------------
var link = $('#reusable_iframe').contents().find(HTMLclass).eq(position).find(searchBy).attr('href');

Эта проблема очень похожа на мою проблему ajax, которая также работала с предупреждением. как узнать, когда DOM снова готов после добавления узла из ajax Я не нашел решения для обеих проблем ...

Я попробовал это: jQuery.готов в динамически вставляемом iframe , но он не работает для меня ...

Спасибо всем =)

1 Ответ

1 голос
/ 12 октября 2011
$('#globalContainer').append('<iframe id="reusable_iframe" src="" width="90%" height="400" name="reusable_iframe"></iframe>');
//....
$('#reusable_iframe').attr('src', link);

$('#reusable_iframe').load(function(){
    var link = $('#reusable_iframe').contents().find(HTMLclass).eq(position).find(searchBy).attr('href');

});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...