Есть веб-страница, для которой я делаю скрипт greasmonkey.Эта страница имеет несколько фреймов.Я обнаружил, что они являются проблемой, однако я не знаю, как решить проблему.
Сначала мой сценарий создает маленькое поле div с кнопкой.При нажатии кнопки скрипт анализирует содержимое веб-страницы и вызывает alert
при определенных условиях.
Консоль Javascript в Firefox уже выкрикивает мне, что доступ запрещен для document
, потому что мой скрипт использует document.getElementByID
для поискаверхнее тело документа, к которому добавляется блок div.
Эту проблему легко избежать, так как тогда сценарий завершается ошибкой и застревает в iframes, но все еще продолжается на главной странице, поскольку он дает доступ к document
.
Проблема возникает, когда я пытаюсь использовать оповещение в своей функции.Похоже, что iframes захватывает мой скрипт и убивает его с помощью Permission denied to access property 'alert'
.
Как мне сказать браузеру / скрипту или как-то еще, что я хочу, чтобы мой скрипт запускался только в основном документе, и я не хочу, чтобынадоел iframes? Я установил дополнение NO-script, разрешил основной домен и заблокировал дополнительный домен (который загружается внутри iframes), и все сообщения с предупреждениями идут нормально.Но я не могу попросить своих пользователей установить noscript, включить / отключить определенные домены, и мой скрипт должен работать нормально.Мне нужно найти решение, которое бы работало со всеми включенными фреймами.
Надеюсь, это не сбивало с толку.
Спасибо за любую помощь.