2011-03-26 10 views
8

팝업에서 백그라운드 스크립트로 함수를 호출하는 방법이 있습니까? 나는 그 질문보다 훨씬 더 설명 할 수 없다. 내가하는 일에있어 내가 가진 오류는 아니지만 오히려 내가 어떻게 해야할지를 완전히 모른다. 배경 페이지에 정의 된 함수를 호출 할 팝업 페이지의 버튼을 클릭 할 수있게하려고합니다.팝업에서 백그라운드로 함수 호출

+0

[크롬 확장에서 popup.js와 background.js 사이의 통신 방법] (https://stackoverflow.com/questions/13546778/how-to-communicate-between-popup-js-and- background-js-in-chrome-extension) – JerryGoyal

답변

11

실제로는 Message Passing을 사용하는 것이 가능합니다. 이

var bgPage = chrome.extension.getBackgroundPage(); 
var dat = bgPage.paste(); // Here paste() is a function that returns value. 
21

는보십시오. 하지만 그 사용되지 않습니다. 대신 chrome.runtime.sendMessagechrome.runtime.onMessage.addListener을 사용하십시오.

+0

나는 예를 찾기 위해 내가 이것을 할 수 있음을 알았다. 감사. – Auspex

0

당신은 여전히 ​​chrome.extension.sendMessage을 사용할 수 있습니다

popup.js

$("#button").click(function(){ 
    chrome.extension.sendMessage({ msg: "startFunc" }); 
}); 

background.js

var func = function(){ 
    alert("Success!"); 
}; 

chrome.extension.onMessage.addListener(
    function(request, sender, sendResponse){ 
     if(request.msg == "startFunc") func(); 
    } 
);