Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.06.2017, 20:41
Интересующийся
Отправить личное сообщение для Илья Колдунов Посмотреть профиль Найти все сообщения от Илья Колдунов
 
Регистрация: 06.09.2016
Сообщений: 21

onreadystatechange не срабатывает
Есть код динамически генерирующий iframe:
function add(event)
{
    console.log(event.target.readyState);
}

function load()
{
    var frame = document.createElement("iframe");
    frame.setAttribute("SRC", "RESOURCES/FRAME.HTML");
    document.body.appendChild(frame);
    frame.contentWindow.document.onreadystatechange = add;
}

load();


Почему обработчик на onreadystatechange не срабатывает ни разу?
Ответить с цитированием
  #2 (permalink)  
Старый 05.06.2017, 20:48
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

https://developer.mozilla.org/ru/doc...adystatechange
Ответить с цитированием
  #3 (permalink)  
Старый 05.06.2017, 21:04
Интересующийся
Отправить личное сообщение для Илья Колдунов Посмотреть профиль Найти все сообщения от Илья Колдунов
 
Регистрация: 06.09.2016
Сообщений: 21

Спасибо, но кажется вы ответили не на тот вопрос...
Меня не XMLHttpRequest интересует. А вот здесь про динамическую генерацию ничего нет(
https://developer.mozilla.org/en-US/...adystatechange
Ответить с цитированием
  #4 (permalink)  
Старый 05.06.2017, 21:05
Интересующийся
Отправить личное сообщение для Илья Колдунов Посмотреть профиль Найти все сообщения от Илья Колдунов
 
Регистрация: 06.09.2016
Сообщений: 21

Кстати, в таком случае не работает и onDOMContentLoaded.
Ответить с цитированием
  #5 (permalink)  
Старый 05.06.2017, 21:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Илья Колдунов,
может так?
function load()
{
    var frame = document.createElement("iframe");
    document.body.appendChild(frame);
    frame.onload = add;
    frame.setAttribute("SRC", "RESOURCES/FRAME.HTML");

}
Ответить с цитированием
  #6 (permalink)  
Старый 06.06.2017, 03:43
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Илья Колдунов,
то есть притуливать объекту (даже не самому порожденному) метод, которым он не обладает, и удивляться почему не работает, к вашей проблеме не относится?
Ответить с цитированием
  #7 (permalink)  
Старый 06.06.2017, 12:54
Интересующийся
Отправить личное сообщение для Илья Колдунов Посмотреть профиль Найти все сообщения от Илья Колдунов
 
Регистрация: 06.09.2016
Сообщений: 21

Сообщение от laimas Посмотреть сообщение
Илья Колдунов,
то есть притуливать объекту (даже не самому порожденному) метод, которым он не обладает, и удивляться почему не работает, к вашей проблеме не относится?
Метод для document существует. Он описан в спецификации MSDN:
https://developer.mozilla.org/en-US/...adystatechange
А XMLHttpRequest тут не при чём(
Ответить с цитированием
  #8 (permalink)  
Старый 06.06.2017, 12:57
Интересующийся
Отправить личное сообщение для Илья Колдунов Посмотреть профиль Найти все сообщения от Илья Колдунов
 
Регистрация: 06.09.2016
Сообщений: 21

Сообщение от рони
может так?

Да, спасибо. оно будет работать... Но меня интересует то, как встроить этот кусок кода перед срабатыванием всех остальных, которые есть в iframe. Т.е. чтобы встроенный сработал первым. Такое возможно при помощи document.onreadystatechane, но почему-то оно не работает для динамически генерируемых iframe.
Ответить с цитированием
  #9 (permalink)  
Старый 06.06.2017, 13:12
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Илья, так вы что хотите, отследить загрузку документа или конкретные изменения в документе?
Ответить с цитированием
  #10 (permalink)  
Старый 06.06.2017, 13:20
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Илья Колдунов, потому что фрейм не дает доступа к ресурсу с другого домена.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
onclick срабатывает со 2 раза в ie djonA Общие вопросы Javascript 19 25.03.2013 01:07
AJAX запрос в Internet Explorer срабатывает через раз nikolayseo jQuery 5 13.11.2012 00:13
Нажатие по дате в календаре срабатывает только со второго клика afr0 Events/DOM/Window 4 31.10.2012 13:39
Не срабатывает обертка фун-и в IE8 zilker Internet Explorer 6 16.07.2012 18:54
FireFox не дергает onreadystatechange при синхронном запросе? Василий Б. AJAX и COMET 0 01.03.2010 16:18