Saya ingin membuat ekstensi chrome yang menjalankan beberapa skrip setelah satu halaman dimuat, saya tidak yakin apakah saya harus menerapkan logika ini di halaman latar belakang atau bisa di tempat lain, bantuan apa pun di sini akan sangat dihargai.
javascript
google-chrome
google-chrome-extension
albertosh.dll
sumber
sumber
Jawaban:
Dari skrip latar belakang Anda dapat mendengarkan
chrome.tabs.onUpdated
acara dan memeriksa propertichangeInfo.status
di callback. Itu bisa memuat atau selesai . Jika sudah selesai , lakukan aksinya.Contoh:
chrome.tabs.onUpdated.addListener( function (tabId, changeInfo, tab) { if (changeInfo.status == 'complete') { // do your things } })
Karena ini mungkin akan memicu pada setiap penyelesaian tab, Anda juga dapat memeriksa apakah tab tersebut
active
pada atribut homonymous -nya , seperti ini:chrome.tabs.onUpdated.addListener( function (tabId, changeInfo, tab) { if (changeInfo.status == 'complete' && tab.active) { // do your things } })
sumber
Uncaught TypeError: Cannot read property 'onUpdated' of undefined
if (tab.url.startsWith("https://example.com") == false) return;
Jika perlu dijalankan pada
onload
event halaman, yang berarti bahwa dokumen dan semua asetnya telah dimuat, ini harus berada dalam skrip konten yang disematkan di setiap halaman yang ingin Anda lacakonload
.sumber
run_at: "document_end"
Anda dapat memasukkan skrip Anda ke dalam skrip konten, lihat
sumber
Kode ini harus melakukannya:
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!')
sumber
https://developer.chrome.com/extensions/content_scripts#matchAndGlob