【问题标题】:Detect Firefox mixed content blocking with JavaScript or jQuery?使用 JavaScript 或 jQuery 检测 Firefox 混合内容阻塞?
【发布时间】:2017-12-03 17:49:51
【问题描述】:

如何使用 JavaScript 或 jQuery 检测 Firefox(或任何浏览器)的混合内容阻止“功能”?

更多关于 Firefox 的混合内容拦截: https://blog.mozilla.org/tanvi/2013/04/10/mixed-content-blocking-enabled-in-firefox-23/

长篇大论:

我公司有一家供应商提供我们网站的在线订购部分。在线订购使用https,而我们的主要网站使用http。我被要求重新设计供应商的在线订购页面以匹配我们主站点的外观。我们供应商的在线订购页面有两个 iframe,一个用于页眉,一个用于页脚。我用 target="_parent" 更新了页眉和页脚中的导航链接,这适用于除 Firefox 23 之外的所有浏览器,因为 FF23 阻止了指向 http 源的链接。我的计划是简单地编写一个脚本来更改链接 target="_blank" 并让 Firefox 用户获得弹出窗口。但现在 jQuery 在 1.9 版中删除了“jQuery.browser”功能,并表示尝试使用功能检测。所以在谷歌搜索了一段时间后,我来到这里谦虚地问这个问题。是的,我知道我可以编写纯 JavaScript 来检测浏览器,但我认为在这种情况下使用特征检测会更好。

【问题讨论】:

    标签: javascript jquery html firefox browser


    【解决方案1】:

    您误解了混合内容阻止的范围 - 它几乎存在于所有当前的浏览器中,包括:

    您需要重新构建您的网站,使其不加载混合内容。在这种情况下,这可能需要您通过 HTTPS 使您的主网站可用。

    【讨论】:

    • 嗯,这很奇怪,因为 FF24、IE10 和 Chrome 29 并没有阻止链接。
    • 好的,现在我很困惑 - 您的页面最终包含哪些类型的混合内容?
    • 第三方 https 站点允许我使用 iframe 显示页眉/页脚以沙箱化 css(不是我的设计)。因此,我上传了托管在 https 站点上的 header.htm 和 footer.htm。所有图像和其他资产都托管在 https 站点上。被阻止的是当用户单击我的主要 http 站点上的页眉/页脚中的链接时。我越看越觉得这种行为在 FF23 中是一个错误,这就是它在 FF24 中消失的原因。
    猜你喜欢
    • 2017-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-20
    • 1970-01-01
    • 2018-07-30
    • 1970-01-01
    相关资源
    最近更新 更多