chrome extensions 中的交互


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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM