如何使用浏览器检测告诉用户在 Chrome 中打开页面

How to tell user to open page in Chrome with Browser Detect

我想添加一条消息,告诉用户如果不在该浏览器中,请在 chrome 中打开页面。如何调整以下内容以使用 document.write() 而不是 alert(),并且如果它们已经在 chrome 中,还排除写入消息?我在这里找到了以下浏览器检测代码:https://developer.mozilla.org/en-US/docs/Web/API/Window/navigator

var sBrowser, sUsrAg = navigator.userAgent;

if (sUsrAg.indexOf("Chrome") > -1) {
    sBrowser = "Google Chrome";
} else if (sUsrAg.indexOf("Safari") > -1) {
    sBrowser = "Apple Safari";
} else if (sUsrAg.indexOf("Opera") > -1) {
    sBrowser = "Opera";
} else if (sUsrAg.indexOf("Firefox") > -1) {
    sBrowser = "Mozilla Firefox";
} else if (sUsrAg.indexOf("MSIE") > -1) {
    sBrowser = "Microsoft Internet Explorer";
}

alert("You are using: " + sBrowser);

如果用户使用 chrome,一个简单的解决方案是不为 sBrowser 分配任何值,然后检查 undefined.

var sBrowser, sUsrAg = navigator.userAgent;

if (sUsrAg.indexOf("Safari") > -1) {
  sBrowser = "Apple Safari";
} else if (sUsrAg.indexOf("Opera") > -1) {
  sBrowser = "Opera";
} else if (sUsrAg.indexOf("Firefox") > -1) {
  sBrowser = "Mozilla Firefox";
} else if (sUsrAg.indexOf("MSIE") > -1) {
  sBrowser = "Microsoft Internet Explorer";
}

if (sBrowser != null) {
  document.write("You are using " + sBrowser + ". Use Chrome instead"); // or whatever
}

这种方法的一个问题是您必须考虑现有的每一个浏览器。只需检查 chrome,然后告诉其他人使用它。您无法告诉他们他们使用的是什么浏览器,但这在这里似乎并不重要。

var sUsrAg = navigator.userAgent,
  usingChrome = sUsrAg.indexOf("Chrome") > -1;

if (!usingChrome) {
  document.write("You are not using Chrome. Switch to blah blah blah"); // or whatever
}