问题标签 [browser-action]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1450 浏览

javascript - 切换(隐藏/显示)我的 chrome 扩展的键盘快捷键

我正在开发扩展程序,我希望我的 chrome 扩展程序可以通过命令(mac:“CMD+SHIFT+9”或默认值:“Ctrl+Shift+9”)切换(显示/隐藏);虽然我在清单文件中定义了命令:

现在,我可以在我的 backgroundScript.js 中做什么来做到这一点?

我的 backgroundScript.js 是:

我该怎么做?谢谢!

实现了此“显示/隐藏”功能的示例扩展演示:

https://chrome.google.com/webstore/detail/meldium-browser-extension/fdocegmnehjgfhfjelhmaobjccoiklle

0 投票
0 回答
240 浏览

javascript - 如何让 Chrome 扩展程序通过更改其图标颜色来响应特定的 URL 集合?

我正在构建一个浏览器扩展,我希望它只响应一个特定的 url 列表 - 目前,我只是用一个 URL 测试它,我试图让一个图标从白色变为绿色访问特定网站。(我想要浏览器操作,而不是页面操作)。当我访问示例 URL 时,图标当前没有改变颜色。

所以,准确地说,问题是:我怎样才能让 Chrome 扩展程序通过改变它的图标颜色来响应特定的 URL 集合?

这是我编写/调整的代码:

我将上面的代码基于问题如何根据用户登录更改图标的颜色,这与我的问题有关。

更新 [25/10/15] - 当访问列出的 URL 之一时(当前仅 Cadbury),下面的代码在搜索栏中显示一个绿色图标。但我想要的是工具栏上的图标 - 即浏览器操作(不是页面操作),并且该图标在访问特定网站时更改颜色。

我想我需要使用 browserAction。

这段代码类似于我正在寻找的行为,但不是在单击图标时更改颜色,而是希望它在访问特定网址时更改颜色。

0 投票
1 回答
986 浏览

javascript - WebExtension:如何在浏览器操作中访问后台脚本

我对 WebExtension 完全陌生(试图在 Firefox 下使用它们)。我写了一个浏览器动作。为了保持持久状态,我认为我必须实现一个后台脚本。

如何从浏览器操作脚本访问后台脚本中定义的变量?

还是假设后台脚本可以包含浏览器操作的状态是错误的?

0 投票
3 回答
198 浏览

google-chrome - 从 content_scripts 和 browser_action 访问 chrome 同步数据

我正在尝试在 browser_action 和 content_scripts 之间共享数据。

目前,我遇到了一个问题,我可以访问 browser_action 页面中的数据(一旦设置它就会返回正确的值并跨会话保存)。

但是,即使保存在 browser_action.js 中,我似乎也无法访问 content_script 中的数据。console.log 始终为该值返回“未定义”。

预期的工作流程将是:

清单.json

content_script.js

browser_action.js

browser_action.html

0 投票
1 回答
280 浏览

google-chrome-extension - 使 Chrome 扩展浏览器操作弹出窗口大于浏览器窗口

在 FireFox 扩展中,如果需要,在工具栏上打开的面板/弹出窗口会在浏览器窗口之外调整大小,以便我们看到面板中的每个填充元素。然而,在 Chrome 中,弹出/面板仅在浏览器窗口边界之前绘制。因此,如果用户将浏览器窗口的大小调整得足够小,您就不会看到整个弹出窗口。

我检查了文档,找不到任何东西。有什么办法可以显示整个弹出窗口吗?

0 投票
1 回答
80 浏览

javascript - chrome 扩展上的 browserAction 用于在网页上嵌入内容(如 Rapportive)

我想构建一个 Chrome 扩展程序,在显示特定网站时显示嵌入的一些内容。与 Gmail 上的 Rapportive 完全相同。

似乎 browserAction 只能让我将该内容显示为弹出窗口,而不是嵌入网页中。我怎样才能做到这一点?

如何将其限制为单个 URL?

0 投票
1 回答
689 浏览

css - 使用 browser_action 应用 css 样式

我是 chrome 扩展开发的新手。我正在编写一个将 CSS 注入页面的 chrome 扩展。通过在 manifest.json 中指定 css 文件,我已经成功地做到了这一点。

我现在想根据通过 browser_action 触发的弹出窗口中选择的链接或按钮应用不同的 css(文件)。因此,单击链接 1 将应用 style-red.css,单击链接 2 将应用 style-blue.css。第三个“重置”按钮应将 css 重置为其原始状态(删除自定义样式的红色或蓝色 css 文件)。

我的 manifest.json 如下:

我目前的方法是在 script.js 中有一个监听器来监听 popup.html 中按下的按钮。根据按下的按钮,以下 script.js 将使用下面的 jquery 将相应的 CSS 文件添加到 my-site.com 中:

我尝试在 script.js 中使用上面的 jquery(没有 manifest.json 中的 browser_action),认为 script.js 会自动加载,但 CSS 不会应用于 my-site.com。我做错了什么或者是否有更简单的 Javascript 而不需要添加完整的 jquery 库?

即使 jquery 有效,我如何根据 popup.html 中的选择应用不同的 CSS 文件,以及如何根据用户选择将 css 重置为其原始样式?

0 投票
2 回答
1810 浏览

javascript - 如何从 Chrome 扩展的选项页面启用/禁用 manifest.json CSS 内容脚本?

有什么方法可以从或图标禁用/启用CSS内容脚本?我说的是在一组特定的匹配页面上运行清单中定义的 CSS 内容脚本的那种脚本。因此,如果清单包括:browserActionpageAction

这将注入somewhere.css. somewhere.com有没有办法编写可以完全启用或禁用 CSS 内容脚本的browserAction或选项弹出窗口?pageAction

我知道我可以编写一个 JavaScript 内容脚本来监听这样的选项弹出窗口,然后在页面中添加/减去 CSS 规则和/或类。但是我希望在呈现页面之前插入这个 CSS ,据我所知,唯一的方法是使用 CSS 内容脚本。

但是,有没有办法从弹出窗口中完全启用或禁用只有 CSS 内容脚本的扩展?我看不出有办法做到这一点。

0 投票
1 回答
714 浏览

google-chrome-extension - 避免在 Chrome 扩展中创建浏览器操作

我正在创建一个 chrome 扩展。将扩展程序添加到 chrome 后,地址栏旁边的图标也会添加(浏览器操作)。我的扩展不需要任何浏览器操作。那么,我怎样才能避免创建这个图标呢?

编辑:我的清单文件:

0 投票
1 回答
614 浏览

javascript - 在浏览器操作单击时切换图标

如何在浏览器操作 onclick 上切换我的扩展程序图标?

清单.json

背景.js

关闭.svg- off.svg
on.svg- on.svg

现在,只要我将扩展程序加载到浏览器,上面的代码就会自动将图标从“off.svg”切换到“on.svg”。如何在浏览器操作图标单击时设置相同的内容。