한 페이지가로드 된 후 일부 스크립트를 실행하는 크롬 확장을 만들고 싶습니다.이 로직을 백그라운드 페이지에 구현해야하는지 아니면 다른 곳에서든 구현할 수 있는지 확실하지 않습니다. 여기에 도움을 주시면 대단히 감사하겠습니다.
한 페이지가로드 된 후 일부 스크립트를 실행하는 크롬 확장을 만들고 싶습니다.이 로직을 백그라운드 페이지에 구현해야하는지 아니면 다른 곳에서든 구현할 수 있는지 확실하지 않습니다. 여기에 도움을 주시면 대단히 감사하겠습니다.
답변:
A로부터 배경 스크립트 당신은들을 수 있습니다 chrome.tabs.onUpdated
이벤트와 속성을 확인 changeInfo.status
콜백에. 로드 하거나 완료 할 수 있습니다 . 이 경우 완료 , 작업을한다.
예:
chrome.tabs.onUpdated.addListener( function (tabId, changeInfo, tab) {
if (changeInfo.status == 'complete') {
// do your things
}
})
탭이 완성 될 때마다 트리거되기 때문에 다음 과 같이 탭이 동형 속성active
에 있는지 확인할 수도 있습니다 .
chrome.tabs.onUpdated.addListener( function (tabId, changeInfo, tab) {
if (changeInfo.status == 'complete' && tab.active) {
// do your things
}
})
Uncaught TypeError: Cannot read property 'onUpdated' of undefined
if (tab.url.startsWith("https://example.com") == false) return;
onload
페이지 의 이벤트 에서 실행해야하는 경우 ( 즉, 문서 및 모든 자산이로드 된 경우) 추적하려는 각 페이지에 포함 된 콘텐츠 스크립트에 있어야합니다 onload
.
run_at: "document_end"
이 코드는 다음을 수행해야합니다.
manifest.json
{
"name": "Alert 'hello world!' on page opening",
"version": "1.0",
"manifest_version": 2,
"content_scripts": [
{
"matches": [
"<all_urls>"
],
"js": ["content.js"]
}
]
}
content.js
alert('Hello world!')
https://developer.chrome.com/extensions/content_scripts#matchAndGlob