background与content_script的交互
其所指为当前网页与扩展插件之间的交互。使用chrome.* API进行通信。
background向content_script发送消息
background.js
1
chrome.tabs.sendMessage(tabId,{greeting:‘hello‘});
content_script.js
1 chrome.extension.onMessage.addListener(
2 function(request, sender, sendResponse) {
3 console.log(request.greeting);
4 }
5 );
附:tabId的获取方法
background.js
1 chrome.tabs.onUpdated.addListener(
2 function(tabId, changeInfo,tab) {
3 console.log(tabId);
4 }
5 );
content_script向background发送消息
content_script.js
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,未成功。
chrome extensions 中的交互,布布扣,bubuko.com
时间: 2024-10-26 09:29:19