【问题标题】:Trying to make a script that detects if the browser is Chrome, if not do code, if so, do code尝试制作一个脚本来检测浏览器是否是 Chrome,如果不是,则执行代码,如果是,则执行代码
【发布时间】:2020-08-18 22:17:09
【问题描述】:

我正在尝试制作一个脚本来检测您是否有 Chrome,然后执行一些代码,如果没有,则执行其他代码。我正在使用 DetectJS 来检测浏览器,这是我现在的代码:

const ua = detect.parse(navigator.userAgent);

function nameContinue() {
  if (ua.browser.family == "Chrome") {
    console.log("browser (" + ua.browser.family + ") is supported");
    //Do some code
  } else {
    console.log("browser (" + ua.browser.family + ") is not supported");
    //Do some other code
  }
}
<button onClick="nameContinue()">Click me to run code</button>

<script src="https://vendor.scribblenerd.com/detectjs-1.0.0-dist/js/detect.min.js"></script>
<script src="js/form.js"></script>

当我在 Firefox 上测试它时它工作正常,但在 Safari 和 Mobile Safari 中,控制台会打印出来

browser (Safari) is supported

即使它应该说它在控制台中不受支持...有什么想法吗?

【问题讨论】:

标签: javascript html safari mobile-safari browser-detection


【解决方案1】:

您可以尝试使用ua.browser.name,而不是检查browser.family,并使用一些技术来查找包含子字符串的字符串。

例如:

if (ua.browser.name.toLowerCase().indexOf("chrome") >= 0)

可证明不止一个浏览器使用同一个家族或任何不共享他们的浏览器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-09
    • 2011-05-23
    • 2020-08-16
    • 2020-12-30
    相关资源
    最近更新 更多