javascript - 通过javascript if else语句在不同的浏览器中显示不同的内容

标签 javascript html asp.net if-statement safari

在我的代码中,我正在检测所使用的浏览器并尝试显示不同的 <div>内容取决于它。

但是我的 JavaScript 代码无法正常工作。我的 Web 应用程序是基于 asp.net 和 vb.net 构建的。

这是我的代码:

<asp:Content ID="Content2" ContentPlaceHolderID="mainContent" runat="Server">
    <div class="btn-wrapper" id="regular-content">
        <asp:Button runat="server" ID="uxLoginButton" Text="Login"  />
        <asp:Button runat="server" ID="uxRegister" Text="Register"  />
    </div>
    <div id="safari-content">
        <p>Use another Browser </p>
    </div>
</asp:Content>

因此,如果用户使用 Safari 以外的任何浏览器,那么我想显示 <div> 处的内容id是 regular-content ,如果用户使用的是 Safari 那么我想显示 <div> 处的内容id是 safari-browser .

在我的 JavaScript 代码中,我检测到用户是否正在使用 safari。

<asp:Content ID="Content3" runat="server" ContentPlaceHolderID="ScriptContent">
    <script type="text/javascript">
    var isSafari = Object.prototype.toString.call(window.HTMLElement).indexOf('Constructor') > 0;
    //document.body.innerHTML = isSafari;
    </script>
</asp:Content>

这可以正确检测浏览器。如果浏览器是 Safari,则 isSafari 的值是 true如果不是,则值为 false .

if (isSafari == "true") {
    document.getElementById("safari-content").style.display = 'block';
    document.getElementById("regular-content").style.display = 'none';
} else {
    document.getElementById("safari-content").style.display = 'none';
    document.getElementById("regular-content").style.display = 'block';
}

但这不能正常工作。在所有情况下,它都会显示常规浏览器内容,即,如果用户使用 Safari,他不应该看到常规浏览器内容,但他会看到常规浏览器内容,而不是 Safari 内容。

我该如何解决这个问题?

最佳答案

检查它是否返回 true 作为 bool 值或字符串作为“true”尝试省略双引号

关于javascript - 通过javascript if else语句在不同的浏览器中显示不同的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34133678/

相关文章:

javascript - 阻止js图像从屏幕上弹出

javascript - 如何转换 HTML DOM 结构

c# - 如何在 asp.net webforms 中正确实现 PRG 模式

C# 列出 session 中没有响应的元素

javascript - 在 Lambda 函数中从 AWS SES 发送电子邮件时访问被拒绝

javascript - 选择包含两个的 Javascript 数组中的另一个元素

javascript - gulp-connect 和 connect.reload

html - 将 <article> 放在 <li> 中是一个好习惯吗?

javascript - HTML5 中的多个相同元素 ID - 这应该如何与脚本一起使用?

c# - Entity Framework 的原子增量