Ответ 1
Попробуйте добавить это в раздел "content_scripts" вашего файла manifest.json.
"run_at": "document_end"
http://code.google.com/chrome/extensions/content_scripts.html
В моем расширении Google Chrome у меня есть Содержимое Script (content.js) и Фоновая страница (background.html). У меня есть context.js, проверяющий ключевое слово, которое появляется на странице. Тем не менее, я хочу подождать, пока страница будет полностью загружена до тех пор, пока я не просмотрю страницу, потому что ключевое слово может появиться в нижней части страницы.
См. Действие страницы по содержанию Пример сэндвич (файлы), это в основном то, что я делаю. Если вы загрузите расширение, вы увидите, что расширение работает только тогда, когда в верхней части страницы появляется слово "сэндвич".
Попробуйте добавить это в раздел "content_scripts" вашего файла manifest.json.
"run_at": "document_end"
http://code.google.com/chrome/extensions/content_scripts.html
В качестве альтернативы манифесту "run_at": "document_end"
может применяться стандартный подход обработки событий javascript. Например, DOMContentLoaded событие может быть использовано для запуска логики, требующей загрузки DOM.
manifest.json
"content_scripts": [
"js": ["content.js"],
"run_at": "document_start"
}
]
content.js
console.log('The extension works');
// ... logic that does not need DOM
function run() {
console.log('The DOM is loaded');
// ... logic that needs DOM
}
document.addEventListener("DOMContentLoaded", run);