Chrome.tabs.executeScript()를 사용하여 삽입된 콘텐츠 스크립트에 매개변수 전달
chrome.tabs.executeScript() 메서드를 사용하면 탭의 콘텐츠에 JavaScript 파일을 추가합니다. 그러나 삽입된 스크립트에 매개변수를 전달하는 직접적인 수단을 제공하지는 않습니다.
방법 1: 실행 전 매개변수 설정
한 가지 접근 방식은 chrome.tabs를 중첩하는 것입니다. JavaScript 파일을 실행하기 전에 변수를 정의하기 위한 runScript() 호출:
chrome.tabs.executeScript(tab.id, {code: 'var config = 1;'}, function() { chrome.tabs.executeScript(tab.id, {file: 'content.js'}); });
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'}); });
콘텐츠 스크립트(content. js):
alert('Example:' + config);
방법 2: 실행 후 매개변수 설정
또는 메시지 전달 API를 사용하여 JavaScript 파일을 실행한 후 매개변수를 전달할 수 있습니다.
chrome.tabs.executeScript(tab.id, {file: 'content.js'}, function() { chrome.tabs.sendMessage(tab.id, 'whatever value; String, object, whatever'); });
content.js에서:
chrome.runtime.onMessage.addListener(function(message, sender, sendResponse) { // Handle message: message === 'whatever value; String, object, whatever' });
위 내용은 Chrome.tabs.executeScript()를 사용하여 삽입된 콘텐츠 스크립트에 매개변수를 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!