background與content_script的交互javascript
其所指爲當前網頁與擴展插件之間的交互。使用chrome.* API進行通訊。html
background向content_script發送消息java
background.jschrome
1 chrome.tabs.sendMessage(tabId,{greeting:'hello'}); spa
content_script.js插件
1 chrome.extension.onMessage.addListener( 2 function(request, sender, sendResponse) { 3 console.log(request.greeting); 4 } 5 );
附:tabId的獲取方法code
background.jshtm
1 chrome.tabs.onUpdated.addListener( 2 function(tabId, changeInfo,tab) { 3 console.log(tabId); 4 } 5 );
content_script向background發送消息blog
content_script.jsip
1 chrome.extension.sendMessage({greeting:'hello'});
background.js
chrome.extension.onMessage.addListener( function(request, sender, sendResponse) { console.log(request.greeting); } );
區別:前者向tabs發送,後者向extension發送。
background與popup的交互
其所指爲擴展先後臺的交互。
popup.html中不能附加任何javascript代碼,包括不限於onclick。應在popup.js中進行定義。
popup獲取background值
bcakground.js
1 var greeting='hello';
popup.js
console.log(chrome.extension.getBackgroundPage().greeting);
background操做popup
使用getViews,未成功。