У меня есть расширение chrome, где страница перезагружается из сценария содержимого. Скрипт содержимого запускается с использованием chrome.tabs.executeScript()
из моего popup.js
на текущей активной вкладке.Как получить доступ к DOM из сценария контента после перезагрузки страницы?
После перезагрузки я не могу привязываться к событию прокрутки окна из сценария содержимого. Есть ли способ вернуть перезагруженную DOM для привязки к событию прокрутки?
Обновление:
popup.js
chrome.tabs.executeScript(null, { file: 'sendArticleLength.js', allFrames: true}, function(result) {
count = result;
chrome.tabs.reload(targetTabID, function() {
chrome.tabs.executeScript({file: 'sendRemainingTime.js', allFrames: true}, function(){
chrome.tabs.sendMessage(targetTabID, {wordcount:count});
});
});
sendRemainingTime.js
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse){
if(request.wordcount) {
wc = request.wordcount;
window.onscroll = function(){
alert('scrolled!');
}
}
});
В sendRemainingTime.js, я хочу, чтобы привязать к OnScroll события после перезагрузки запускается в popup.js отделки. Но в настоящее время onscroll связывается перед перезагрузкой.
Что нужно отправить через sendMessage? Я хочу прослушать событие прокрутки окна на перезагруженной странице, но в настоящее время оно является обязательным до перезагрузки страницы, несмотря на использование обратного вызова 'chrome.tabs.reload (, callback)' –
hsemarap
Не важно, что вы отправляете, для пример '" reject "'. Если вам нужна специальная помощь с кодом, отредактируйте вопрос и добавьте код, который у вас есть сейчас. – wOxxOm
Я отредактировал вопрос, пожалуйста, посмотрите – hsemarap