使用 JavaScript 或 jQuery 检测 Firefox 混合内容阻塞

Detect Firefox mixed content blocking with JavaScript or jQuery?

本文关键字:混合 Firefox JavaScript jQuery 检测 使用      更新时间:2023-09-26

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

更多关于 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 来检测浏览器,但我认为在这种情况下使用功能检测会更好。

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

  • Firefox 23 及更高版本,根据您的链接
  • Chrome 21 及更高版本 (http://blog.chromium.org/2012/08/ending-mixed-scripting-vulnerabilities.html(
  • Internet Explorer 9 及更高版本 (http://support.microsoft.com/kb/2625928(

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