【问题标题】:Chrome Extension get UI element from background scriptChrome 扩展从后台脚本获取 UI 元素
【发布时间】:2013-10-18 03:19:08
【问题描述】:

我开始开发 chrome 扩展。 就我而言,我有以下 manifest.json:

{
    "name": "mY Notifier",
    "version": "1.0",
    "manifest_version": 2,
    "browser_action": {
        "default_icon": "icon.png",
        "default_popup": "popup.html"
    },
    "background": {
        "scripts": [
            "myscript.js"
        ],
        "persistent": false
    },
    "permissions": [
        "tabs","alarms"
    ]
}

所以,如您所见,我有一个默认的弹出式 html 页面和一个后台脚本。

我需要一个后台脚本,因为我需要在启用扩展程序时不时更新图标徽章(不仅仅是用户点击图标)。这工作正常。

在我的popup.html 中,我有几个复选框。现在在我的后台脚本中,我想检查启用了哪些复选框。我怎样才能做到这一点?我无法使用 elementById 在popup.html 中引用我的 ui 元素。如何才能做到这一点?

【问题讨论】:

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


    【解决方案1】:

    您无法从myscript.js 访问popup.html,因为在单击按钮之前不会加载popup.html。 您可以从popup.html 致电myscript.js 中的functon

    popup.js code:
    
    var bg = chrome.extension.getBackgroundPage();
    bg.someFunction(stateOfCkeckboxes);
    

    【讨论】:

    • 哇!好的,不知道为什么我没有想到这一点。但是我设法通过消息传递来做到这一点。这有什么问题吗?除了这里真的不需要吗?
    猜你喜欢
    • 2018-04-11
    • 1970-01-01
    • 1970-01-01
    • 2015-03-22
    • 2021-06-28
    • 1970-01-01
    • 1970-01-01
    • 2013-06-27
    • 1970-01-01
    相关资源
    最近更新 更多