Обнаружение, если JavaScript выполняется в кадре - PullRequest
1 голос
/ 19 ноября 2010

В Firefox, если я использую frames[i].document.readyState, он скажет, что завершено, хотя фрейм выполняет Javascript.

Есть ли способ определить, выполняется ли Javascript во фрейме?

Ответы [ 2 ]

2 голосов
/ 19 ноября 2010

Кадры работают в том же потоке, что и их владелец.Это можно проверить, выполнив дочерний фрейм с длинным циклом, в то время как у родителя есть некоторый код, выполняемый на коротком таймере - вы заметите, что таймер родителя должен дождаться окончания цикла, прежде чем он сможет выполнить обратный вызов.

Это означает, что дочерний фрейм и его родитель не могут выполнять сценарии одновременно.Ваша проверка не выполняется, пока не завершится выполнение JavaScript в дочернем фрейме.

1 голос
/ 19 ноября 2010
   var in_iframe = window != window.top;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...