在background.js下执行的inject.js文件中使用JQuery

问题描述 投票:0回答:1

我正在构建一个chrome扩展,其中我的background.js脚本文件将在某个事件上执行inject.js脚本文件。

我还有一个本地jquery.min.js文件,我已将其包含在manifest.json文件中,以便我可以在我的background.js文件中使用它。

"background": {
    "scripts": ["jquery.min.js","background.js"]
  },

但是,我不确定如何在我的inject.js文件中使用jquery。我尝试使用/// <reference path="jquery.min.js" />,但这不起作用。

关于如何在我的inject.js中使用jquery和其他js库的任何想法?

下面是我的background.js代码

chrome.browserAction.onClicked.addListener(function(tab) {
    //To verify if jQuery is working  
    if (jQuery) {
        console.log("Jquery on");
    } else {
        console.log("Jquery off");
    }

    if(activeTabs.length===0){
        chrome.tabs.executeScript(tab.id, {file:"js/inject.js"});
    }
}
javascript google-chrome-extension
1个回答
2
投票

你必须在注射jquery.min.js之前注射inject.js。在你的情况下:

if(activeTabs.length===0){
    chrome.tabs.executeScript(tab.id, {file:'jquery.min.js'},function(){
        chrome.tabs.executeScript(tab.id, {file:'js/inject.js'});
    });
}
© www.soinside.com 2019 - 2024. All rights reserved.