2011-05-06 7 views
0

팝업 창이 mf_popup.html이고 백그라운드 페이지의 이름이 mf_background.html입니다.크롬 확장 개발 : background_html에서 팝업으로 메소드 호출

브라우저를 시작하면 배경 페이지가 표시됩니다 (본인의 이해대로 Chrome 개발에 익숙하지 않습니다). 내 배경 페이지에서 내 mf_popup.html 페이지의 기능을 호출하고 싶습니다. 예를 들어

:

Start chrome 

background page fires 

background page calls some function in popup page (which initiates some stuff) 

어떻게 위를해야합니까?

답변

1

당신은 mf_javascript.js 모두의 HTML 파일에 필요한 코드를 삽입하고이 라인 모두에서 스크립트가 포함되어있는 경우 :

<script type="text/javascript" src="mf_javascript.js"> 
+0

너무 간단합니다! 길에서 모든 나무 때문에 숲을 놓칠 때가 있습니다. :) 도와 줘서 고마워. – Ryan

+0

아무 문제 없어, 다행히 도울 수있어. – Tyilo

+0

메시지 전달은 어떻게됩니까? 그게 표준이되어서는 안 될까요? –

1

mf_popup.html

//sendRequest([any type] request, [function] responseCallback) 
chrome.extension.sendRequest({ 
    function: "foo", 
    params: [myParam1, myParam2], 
    function(response) { 
     alert("foo returns:"+response.result+"); 
    } 
}); 

mf_background을 .html

chrome.extension.onRequest.addListener(
    function(request, sender, sendResponse) { 
     if(request.function == "foo") 
      var bar = foo(request.params[0], request.params[1]); 
     sendResponse({result: bar}); 
    } 
); 

params를 보내거나 콜백 함수를 사용하지 않으려면 sendRequest ("foo")를 사용할 수도 있습니다.