Я искал ответ на свою проблему - пока безуспешно.
Вот мой код:
var oNewWindow = window.open(sLink,'_blank');
oNewWindow.addEventListener('load',function() { alert('Page loaded'); }, false);
Когда открывается всплывающее окно / вкладка, обработчиквызывают, но если я просматриваю во всплывающем окне, обработчик никогда не вызывается.Зачем?И есть ли способ заставить его работать?
Основная идея состоит в том, что пользователь открывает всплывающее окно, а затем начинает просмотр во всплывающем окне, в то время как код в родительском окне продолжает работать и отслеживает, что происходит во всплывающем окне.,Страница всплывающего окна - это страница в том же домене.
После первой загрузки всплывающего окна я прикрепил к нему обработчик onunload
, который будет вызывать обработчик в родительском окне, а затем таймер будетНачните.Тогда скрипт родительского окна будет работать с содержимым всплывающего окна.Однако проблема возникает с задержкой: если таймер заканчивается, а старая страница во всплывающем окне все еще там, я получаю неверные данные, и весь мой сценарий останавливается.После этого я не могу подключить другой обработчик onunload
.
Обработчик onload
установлен для всего окна, а не для документа внутри окна, так почему не вызывается обработчик?
Также мой скрипт запускается с помощью GreaseMonkey.Мне не нужно, чтобы это был кросс-браузер, так как я работаю только с Firefox.