chrome扩展:executeScript刷新popup.html

时间:2017-03-31 16:51:35

标签: javascript jquery html google-chrome-extension

我希望有一个chrome扩展程序,它会将一个脚本注入活动选项卡,一旦完成,我希望有一个标志,一旦注入脚本就会改变。注入工作正常,回调函数也是如此。 但是,在回调函数popup.html刷新自身后,我不再保存该标志。有没有办法阻止此刷新并继续存储此值? 到目前为止我有什么: 的manifest.json:

{
"name": "test"
, "version": "1.0"
, "author": "test"
, "manifest_version": 2
, "description": "test"
, "permissions": ["activeTab", "tabs", "http://*/*", "https://*/*"]
, "browser_action": {
    "default_title": "test"
    , "default_icon": "images/test.png"
    , "default_popup": "popup.html"
},
, "content_scripts": [
    {
        "matches": ["http://*/*"],
        "js": ["js/jquery-3.2.0.min.js", "js/bootstrap.min.js"]
    }
]

}

popup.js:

var flag = false;
   function runScript(product) {
var p = product;
var config = {
    product: p
};
chrome.tabs.executeScript(null, {
    code: 'var config = ' + JSON.stringify(config)
}, function () {
    chrome.tabs.executeScript(null, {
        file: 'js/content.js'
    }, function (callback) {
        if (callback) {
            flag = true;
            console.log(flag);
        }
    });
});
    }
    document.addEventListener('DOMContentLoaded', function () {
$('#advenced').on('click', function () {
    $(".dropdown").toggle();
    return false;
});
var settings = [];
$("#apply").click(function () {
    form = $('#' + $(this).attr('data-rel'));
    //dothings here
    if (settings.length > 0) {
        runScript(settings);
    }
});
}, false);

0 个答案:

没有答案