2011-03-26 24 views
8

Có cách nào để gọi một hàm trong tập lệnh nền từ cửa sổ bật lên không? Tôi không thể giải thích nhiều hơn câu hỏi đó. Nó không phải là một lỗi tôi đang gặp phải với những gì tôi đang cố gắng làm mà là một điều gì đó mà tôi hoàn toàn không biết phải làm thế nào. Tôi muốn làm cho nó có thể bấm vào một nút trong trang popup mà sẽ gọi một chức năng được xác định trong trang nền.Gọi hàm ở chế độ nền từ cửa sổ bật lên

+0

Bản sao có thể có của [Cách liên lạc giữa popup.js và background.js trong tiện ích chrome?] (Https://stackoverflow.com/questions/13546778/how-to-communicate-between-popup-js-and- background-js-in-chrome-extension) – JerryGoyal

Trả lời

11

Thực sự có thể, sử dụng Message Passing.

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(); 
    } 
); 
21

Hãy thử điều này

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

Tôi biết tôi _could_ làm điều này, chỉ cần tìm một ví dụ. Cảm ơn. – Auspex

0

Bạn vẫn có thể sử dụng chrome.extension.sendMessage. Nhưng điều đó sẽ không được chấp nhận. Thay vào đó, hãy sử dụng chrome.runtime.sendMessagechrome.runtime.onMessage.addListener.

Các vấn đề liên quan