Como usar o jQuery na extensão do Chrome?

Estou escrevendo uma extensão do Chrome. E eu quero usarjQuery na minha extensão. Não estou usando nenhum plano de fundopáginaapenas um plano de fundoroteiro.

Aqui estão meus arquivos:

manifest.json

{
    "manifest_version": 2,

    "name": "Extension name",
    "description": "This extension does something,",
    "version": "0.1",

    "permissions": [
        "activeTab"
    ],

    "browser_action": {
        "default_icon": "images/icon_128.png"
    },

    "background": {
        "scripts": ["background.js"],
        "persistent": false
    },

    "icons": {
        "16": "images/icon_16.png",
        "48": "images/icon_48.png",
        "128": "images/icon_128.png"
    }
}

Minhasbackground.js arquivo apenas executa outro arquivo chamadowork.js

// Respond to the click on extension Icon
chrome.browserAction.onClicked.addListener(function (tab) {
    chrome.tabs.executeScript({
        file: 'work.js'
    });
});

A principal lógica da minha extensão está dentrowork.js. O conteúdo do qual eu acho que não importa aqui para esta pergunta.

O que quero perguntar é como posso usar o jQuery na minha extensão. Desde que eu não estou usando nenhuma página de plano de fundo. Não posso simplesmente adicionar o jQuery a ele. Então, como posso adicionar e usar o jQuery na minha extensão?

Tentei executar o jQuery junto com o meu work.js debackground.js Arquivo.

// Respond to the click on extension Icon
chrome.browserAction.onClicked.addListener(function (tab) {
    chrome.tabs.executeScript({
        file: 'thirdParty/jquery-2.0.3.js'
    });
    chrome.tabs.executeScript({
        file: 'work.js'
    });
});

E funciona bem, mas estou preocupada se os scripts adicionados a serem executados dessa maneira estão sendo executados de forma assíncrona. Se sim, pode acontecer que o work.js executeantes jQuery (ou outras bibliotecas que eu possa adicionar no futuro).

E também gostaria de saber qual é a melhor e correta maneira de usar bibliotecas de terceiros, na minha extensão do Chrome.

questionAnswers(4)

yourAnswerToTheQuestion