ORLAN

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理
  8 Posts :: 24 Stories :: 0 Comments :: 0 Trackbacks

公告

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,未成功。

posted on 2014-05-19 11:39 ORLAN 阅读(...) 评论(...) 编辑 收藏