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

如何实现Chromium内核浏览器访问时弹出切换至Firefox的提示框

检测Chromium内核浏览器并提示切换的JavaScript实现

核心修改思路

你原来的代码是检测非Chrome浏览器并提示切换到Chrome,现在需要反转逻辑:检测Chromium内核浏览器(包括Chrome、新版Edge、Brave、Vivaldi等),并提示用户切换到Firefox这类非Chromium内核浏览器。

基础实现代码

// 检测是否为Chromium内核浏览器
const isChromiumBased = /Chromium|Chrome/.test(navigator.userAgent);

// 提示信息(可根据需求调整)
const alertMessage = "请切换至Firefox或其他非Chromium内核的浏览器访问本网站。\n部分功能在Chromium内核浏览器中无法正常工作。";

if (isChromiumBased) {
  alert(alertMessage);
}

优化后的精准检测

由于navigator.userAgent可被篡改,且部分Chromium内核浏览器(如新版Edge)的UA特征有差异,可结合navigator.vendor和具体浏览器标识提升准确性:

function isChromiumBrowser() {
  const userAgent = navigator.userAgent;
  const vendor = navigator.vendor;

  // 覆盖主流Chromium内核浏览器:Chrome/Chromium、新版Edge、Brave、Vivaldi
  return (
    (/Chrome|Chromium/.test(userAgent) && vendor === 'Google Inc.') ||
    (/Edg/.test(userAgent) && vendor === 'Microsoft Corporation') ||
    /Brave/.test(userAgent) ||
    /Vivaldi/.test(userAgent)
  );
}

const alertMessage = "请切换至Firefox或其他非Chromium内核的浏览器访问本网站。\n部分功能在Chromium内核浏览器中无法正常工作。";

if (isChromiumBrowser()) {
  alert(alertMessage);
}

注意事项

  • 浏览器UA检测并非100%可靠,若用户手动修改UA会导致检测失效;
  • 若不需要兼容老版Edge(基于EdgeHTML内核),基础实现代码已足够满足大部分场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 05:25:53