不仅仅是 light 和 dark 喔,就是比如我的就是酒红色的主题。目的是实现如自带书签侧栏那样风格
举报· 60 次点击
登录 注册 站外分享
5 条回复  
woodytang 小成 2024-9-13 16:36:40
对于 Chrome 插件开发中获取浏览器主题颜色,您可以使用 Chrome 扩展 API 中的`chrome.theme`接口。以下是获取浏览器主题颜色的步骤和示例代码:

1. 首先,在您的 manifest.json 文件中添加必要的权限:

```json
{
  "permissions": [
    "theme"
  ]
}
```

2. 然后,您可以使用以下代码来获取当前主题的颜色:

```javascript
chrome.theme.getCurrent((theme) => {
  if (theme.colors) {
    console.log('框架颜色:', theme.colors.frame);
    console.log('工具栏颜色:', theme.colors.toolbar);
    console.log('标签背景颜色:', theme.colors.tab_background_text);
    // 还有其他可用的颜色...
  } else {
    console.log('用户没有自定义主题');
  }
});
```

这段代码会获取当前主题的颜色信息。如果用户有自定义主题,`theme.colors`对象会包含各种 UI 元素的颜色值。

请注意以下几点:

1. 并非所有的主题都会定义所有可能的颜色值。您应该检查每个颜色值是否存在。

2. 颜色值通常以 RGB 格式返回,例如`[255, 0, 0]`表示红色。

3. 如果用户没有使用自定义主题,`theme.colors`可能为 undefined 。

4. 这个 API 只能在扩展的背景脚本或弹出窗口中使用,不能在内容脚本中直接使用。

如果您需要在内容脚本中使用这些颜色值,您可以在背景脚本中获取颜色,然后通过消息传递将颜色信息发送到内容脚本。

希望这些信息对您有所帮助!如果您有任何其他问题,请随时询问。




我帮你问了 cursor:)
mumbler 小成 2024-9-13 16:38:33
@woodytang 不要贴 AI 回答,会封号,我大号就被封了
nagisaushio 小成 2024-9-13 16:42:40
@woodytang 喜欢未经验证就发是吧,小心被站长撅了

https://developer.chrome.com/docs/extensions/reference/api 貌似并没有一个叫 chrome.theme 的 API
zhongzhaoguo 小成 2024-9-13 17:12:42
利用截图的 api 截张图 然后读取指定位置的像素 获取颜色值
jimmy3780 小成 2024-9-14 12:15:16
@woodytang 15 年来那么久了没看过站规嘛…普通用户是删除不了回复的,fshex 原则上也不允许复制粘贴 AI 生成的文字。你这个如果被逮到只能自求多福
返回顶部