예, 브라우저 또는 페이지 동작 버튼에서 콘텐츠 스크립트에 연락 이루어집니다 배경 스크립트와 콘텐츠 스크립트 (들)
첫 번째 단계 사이에 앞뒤로 전송 된 메시지 사용 : 무엇을해야 하는지를 배경 스크립트를 말해을 browserAction/pageAction 버튼을
chrome.browserAction.onClicked.addListener(function(tab) {
...
});
2 단계 클릭 (! 코드가 인식에 실제로) 그런 다음 콘텐츠 스크립트에 메시지를 보낼 수 browserAction.onClicked
이벤트 리스너 내부를 :
chrome.tabs.sendMessage(tab.id, {<YOURMESSAGEPAYLOAD>});
3 단계 : 콘텐츠 스크립트 내부에서, 당신은 수신 메시지
청취자를 추가
chrome.runtime.onMessage.addListener(function(request, sender, callback) {
// request contains the YOURMESSAGEPAYLOAD sent above as a Javascript object literal
});
또한 둥근 다른 길을 갈 및 사용하여 배경 스크립트에 콘텐츠 스크립트하여 내부에 다음과 같은 메시지를 보낼 수 있습니다 내용 스크립트
chrome.runtime.sendMessage({<YOURMESSAGEPAYLOAD>});
및 다음 배경 스크립트 내에서 위에서 언급 한 바와 같이 동일한 방법을 onMessage
수신기를 사용합니다.
이 문서는 말하지 않지만'onClicked '에 대한'tab' 인자는 활성 탭이라고 가정합니다. 이렇게하면'query'가 필요없이'tab.id'를 얻을 수 있습니다. – Teepeemm
사실 ... 이에 따라 예제를 변경했습니다. – devnull69
이 답변은 조금 늦었고 백만 달러입니다.하지만 addEventListener가 아닌 addListener입니다. –