Bagaimana untuk Meluluskan Parameter kepada Skrip Kandungan yang Disuntik dalam Sambungan Chrome?

Mary-Kate Olsen
Lepaskan: 2024-10-28 07:19:30
asal
573 orang telah melayarinya

How to Pass Parameters to Injected Content Scripts in Chrome Extensions?

Melalui Parameter ke Skrip Kandungan yang Disuntik Menggunakan chrome.tabs.executeScript()

Apabila menyuntik skrip kandungan menggunakan chrome.tabs.executeScript(tab.id, {file: "content.js"}), tiada cara langsung untuk menghantar parameter kepada skrip. Walau bagaimanapun, anda boleh melaksanakan fungsi ini menggunakan dua kaedah alternatif:

Menetapkan Parameter Sebelum Pelaksanaan

Untuk menentukan pembolehubah sebelum melaksanakan skrip kandungan, nest chrome.tabs.executeScript memanggil seperti yang ditunjukkan di bawah:

chrome.tabs.executeScript(tab.id, {
    code: 'var config = 1;'
}, function() {
    chrome.tabs.executeScript(tab.id, {file: 'content.js'});
});
Salin selepas log masuk

Untuk pembolehubah kompleks, gunakan JSON.stringify untuk menukar objek kepada rentetan:

var config = {somebigobject: 'complicated value'};
chrome.tabs.executeScript(tab.id, {
    code: 'var config = ' + JSON.stringify(config)
}, function() {
    chrome.tabs.executeScript(tab.id, {file: 'content.js'});
});
Salin selepas log masuk

Dalam content.js, akses pembolehubah menggunakan alert('Contoh:' config); .

Menetapkan Parameter Selepas Pelaksanaan

Untuk menetapkan parameter selepas pelaksanaan, gunakan API menghantar mesej:

chrome.tabs.executeScript(tab.id, {file: 'content.js'}, function() {
    chrome.tabs.sendMessage(tab.id, 'whatever value; String, object, whatever');
});
Salin selepas log masuk

Dalam content.js, dengar mesej menggunakan chrome.runtime .onMessage.addListener(fungsi(mesej, penghantar, sendResponse) { // Mengendalikan mesej });. Mesej akan mengandungi nilai parameter.

Atas ialah kandungan terperinci Bagaimana untuk Meluluskan Parameter kepada Skrip Kandungan yang Disuntik dalam Sambungan Chrome?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!