如何从内容脚本调用注入的javascript函数

时间:2019-03-09 10:57:39

标签: javascript google-chrome-extension google-chrome-devtools

  

test.js

doSomething(){
   console.log('Call the function of embadded js file function');
}

我有一个 test.js 文件,我已将其注入到网页中,例如

var scriptDom = document.createElement('script');
const url = chrome.runtime.getURL('test.js');
scriptDom['src'] = url;
document.getElementsByTagName("BODY")[0].appendChild(scriptDom); 

现在我想从内容脚本调用doSomething()方法可以调用注入的javascript从内容脚本调用

1 个答案:

答案 0 :(得分:0)

第W行给出的answer可以帮助我解决问题

test.js (网页)文件

中添加了事件监听器
window.addEventListener("event_name", function(e){ 
     console.log('event recived in embadded js file')
});

从内容脚本中,我将事件触发到

 window.dispatchEvent(new CustomEvent('event_name', {
            'detail': {
                'message': 'some data',
            }
}));