загрузка iframe в IE7 / 8 с использованием Javascript - PullRequest
6 голосов
/ 23 июня 2011

У меня есть загрузка iframe на родительскую страницу. Iframe содержит последовательность форм, и я хотел бы выполнять действия на родительской странице каждый раз, когда содержимое iframe перезагружается (т. Е. После отправки формы в содержимом iframe). Текущий код находится на родительской странице и работает во всех крупных игроках, кроме IE (меня интересуют только IE 7 и 8).

var iframe = document.getElementById('theiframe');
function refresh( ) {
  alert('foo');
}
if (iframe.attachEvent) iframe.attachEvent('onload', refresh);
else iframe.onload = refresh;

Что мне не хватает, что помешало бы этому быть эффективным в IE?

Ответы [ 2 ]

4 голосов
/ 23 июня 2011

Заменить:

iframe.onload = refresh

на:

iframe.attachEvent('load', refresh, false); 

Чтобы устранить путаницу:

var iframe = document.getElementById('theiframe');
function refresh( ) {
  alert('foo');
}

if (iframe.attachEvent) iframe.attachEvent('onload', refresh);
else iframe.addEventListener('load', refresh, false)
1 голос
/ 23 июня 2011

Вы можете позвонить с iframe, позвонив по номеру parent.refresh(), когда закончите с отправкой.

...