Я написал пользовательский скрипт для последнего браузера Chrome. Кажется, скрипт не может получить измененное содержимое страницы после загрузки (например, после загрузки страницы я нажал ¿sth?, и появилось встроенное окно).
Даже если бы я использовал window.setTimeout()
, я все равно не могу получить обновленный контент в обратном вызове таймера через document.getElementById()
. Я просмотрел страницу и обнаружил, что всплывающий элемент существует в DOM.
Это ограничение пользовательского скрипта? Или можно использовать другие методы для получения обновления в пользовательском скрипте?
Обновление: я попробовал DOMSubtreemodified
событие, как было предложено. Но поведение все равно странное.
Я добавил только одну строку JavaScript в пользовательский скрипт для my.safaribooksonline.com,
document.addEventListener("DOMSubtreeModified", function () {
alert(eval('typeof OpenSignInPopup')); });
Но в окне предупреждения отображается «неопределенное» в качестве результата оценки OpenSignInPopup
. Но я могу одновременно запустить оператор предупреждения в консоли скрипта на той же странице и показать результат как «функцию».
Эта функция не была загружена при первом запуске пользовательского сценария. Итак, как я могу использовать его в пользовательском скрипте?