You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在浏览器扩展中检测Arc Browser?现有CSS方法失效求替代

在浏览器扩展环境中检测Arc Browser的替代方法

针对你在ActivityWatch扩展中无法通过CSS变量检测Arc Browser的问题,以下是几个可行的替代方案:

方案1:解析User Agent字符串

Arc浏览器的User Agent会包含专属标识Arc/,可以直接通过navigator.userAgent提取识别:

function isArcBrowser() {
  return navigator.userAgent.includes('Arc/');
}

console.log(isArcBrowser() ? 'Is Arc' : 'Is Not Arc');

这个方法在扩展环境和常规网页中都能稳定工作,无需额外权限。

方案2:检测Arc专属全局变量

Arc会在全局环境中暴露专属内部变量(如window.__ARC__),可以通过检查变量存在性判断:

function isArcBrowser() {
  return typeof window.__ARC__ !== 'undefined';
}

console.log(isArcBrowser() ? 'Is Arc' : 'Is Not Arc');

注意:这类内部变量可能随浏览器版本更新发生变化,需要长期验证兼容性。

方案3:通过扩展API获取浏览器信息

对于Chromium系浏览器,可使用chrome.runtime.getBrowserInfo()(需提前在扩展配置中声明browserInfo权限):

async function isArcBrowser() {
  const info = await chrome.runtime.getBrowserInfo();
  return info.vendor.includes('Arc') || info.name === 'Arc';
}

isArcBrowser().then(result => console.log(result ? 'Is Arc' : 'Is Not Arc'));

该方法依赖官方API,稳定性更高,但需要在扩展的manifest.json中添加权限声明:

{
  "permissions": ["browserInfo"]
}

内容的提问来源于stack exchange,提问作者BelKed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 23:30:02