2013-02-27 2 views
5

Я бег содержания стороннего HTML внутри фрейма, что я не имею никакого контроля над, а в некоторых случаях они имеют ссылки, которые требуют JavaScript: window.close () напрямую. Что-то вроде этого:Поймайте JavaScript: window.close() внутри фрейма

<input type="button" onclick="javascript:window.close()" value ="CLOSE"> 

У меня нет способа найти идентификатор или позицию массива этого элемента.

Естественно, он игнорируется внутри iframe, но есть ли способ поймать, когда это событие запущено? Я пробовал

window.addEventListener("close", closeHandler, false); 
window.addEventListener("onbeforeunload", closeHandler, false); 

, но он полностью игнорирует его. Есть ли способ как-то уловить ВСЕ события/вызовы JavaScript? Любые рекомендации приветствуются.

ответ

0

Насколько я знаю, вам необходимо зафиксировать событие внутри кадра. Если вы не можете изменить содержимое фрейма, вам может быть не повезло. Если вы можете изменить содержимое iframe, вы можете добавить к нему прослушиватель событий и поместить его в глобальную функцию родительского окна. Или вы можете попробовать использовать postMessage.

Смежные вопросы