>웹 프론트엔드 >JS 튜토리얼 >Chrome 확장 프로그램의 콘텐츠 스크립트에 매개변수를 전달하는 방법은 무엇입니까?

Chrome 확장 프로그램의 콘텐츠 스크립트에 매개변수를 전달하는 방법은 무엇입니까?

DDD
DDD원래의
2024-10-28 12:47:02641검색

How to Pass Parameters to Content Scripts in Chrome Extensions?

chrome.tabs.executeScript()를 사용하여 콘텐츠 스크립트에 매개변수 전달

chrome.tabs.executeScript()를 활용하여 콘텐츠 스크립트를 삽입하는 경우 , 스크립트 파일 내의 JavaScript에 매개변수를 전달해야 할 수도 있습니다.

방법 1: 스크립트 실행 전 매개변수 설정

매개변수를 직접 전달하려고 시도하는 대신 파일이 있는 경우 대상 파일을 실행하기 전에 콘텐츠 스크립트를 삽입하는 것을 고려하세요. 이 방법을 사용하면 파일이 로드되기 전에 전역 범위에서 변수를 설정할 수 있습니다.

<code class="javascript">chrome.tabs.executeScript(tab.id, {
  code: 'var config = 1;'
}, function() {
  chrome.tabs.executeScript(tab.id, {file: 'content.js'});
});</code>

방법 2: 스크립트 실행 후 매개변수 설정

또 다른 접근 방식에는 설정이 포함됩니다. 메시지 전달 API를 사용하여 스크립트 파일이 실행된 후 매개변수:

<code class="javascript">chrome.tabs.executeScript(tab.id, {file: 'content.js'}, function() {
  chrome.tabs.sendMessage(tab.id, 'whatever value; String, object, whatever');
});</code>

콘텐츠 스크립트(content.js)에서 chrome.runtime.onMessage를 사용하여 이러한 메시지를 수신합니다. 매개변수 활용:

<code class="javascript">chrome.runtime.onMessage.addListener(function(message, sender, sendResponse) {
  // Handle message.
  // In this example, message === 'whatever value; String, object, whatever'
});</code>

위 내용은 Chrome 확장 프로그램의 콘텐츠 스크립트에 매개변수를 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.