Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menghantar Parameter ke Skrip Kandungan yang Disuntik dengan Chrome.tabs.executeScript()?
Melalui Parameter ke Skrip Kandungan yang Disuntik dengan Chrome.tabs.executeScript()
Kaedah chrome.tabs.executeScript() membenarkan suntikan Fail JavaScript ke dalam kandungan tab. Walau bagaimanapun, ia tidak menyediakan cara langsung untuk menghantar parameter kepada skrip yang disuntik.
Kaedah 1: Tetapkan Parameter Sebelum Pelaksanaan
Satu pendekatan melibatkan chrome.tabs bersarang. executeScript() panggilan untuk menentukan pembolehubah sebelum melaksanakan fail JavaScript:
chrome.tabs.executeScript(tab.id, {code: 'var config = 1;'}, function() { chrome.tabs.executeScript(tab.id, {file: 'content.js'}); });
Pembolehubah kompleks boleh ditukar kepada rentetan menggunakan JSON.stringify:
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'}); });
Dalam skrip kandungan (content. js):
alert('Example:' + config);
Kaedah 2: Tetapkan Parameter Selepas Pelaksanaan
Sebagai alternatif, parameter boleh diluluskan selepas melaksanakan fail JavaScript menggunakan API yang menghantar mesej:
chrome.tabs.executeScript(tab.id, {file: 'content.js'}, function() { chrome.tabs.sendMessage(tab.id, 'whatever value; String, object, whatever'); });
Dalam content.js:
chrome.runtime.onMessage.addListener(function(message, sender, sendResponse) { // Handle message: message === 'whatever value; String, object, whatever' });
Atas ialah kandungan terperinci Bagaimana untuk Menghantar Parameter ke Skrip Kandungan yang Disuntik dengan Chrome.tabs.executeScript()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!