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

使用JavaScript或jQuery检测Firefox混合内容阻塞?,javascript,jquery,html,firefox,browser,Javascript,Jquery,Html,Firefox,Browser,如何用JavaScript或jQuery检测Firefox(或任何浏览器)的混合内容阻止“功能” 有关Firefox混合内容阻止的更多信息: 长话短说: 我的公司有一个供应商,提供我们网站的在线订购部分。在线订购使用https,而我们的主网站使用http。我被要求对供应商的在线订购页面进行重新设计,使其与我们主站点的外观和感觉相匹配。我们供应商的在线订购页面有两个iFrame,一个用于页眉,一个用于页脚。我用target=“\u parent”更新了页眉和页脚中的导航链接,该链接适用于除Fir

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

有关Firefox混合内容阻止的更多信息:

长话短说:


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

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

  • Firefox 23及更高版本,根据您的链接
  • Chrome 21及更高版本()
  • Internet Explorer 9及更高版本()

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

Hmm,这很奇怪,因为FF24、IE10和Chrome 29没有阻止链接。好的,现在我很困惑-你的页面最终包含了什么样的混合内容?第三方https站点允许我使用iframe显示页眉/页脚来沙箱css(不是我的设计)。所以我上传了一个header.htm和一个footer.htm,它们托管在https站点上。所有图像和其他资产都托管在https站点上。被阻止的是当用户单击位于我的主http站点的页眉/页脚中的链接时。我看得越多,就越觉得这种行为在FF23中是错误的,这就是为什么它在FF24中消失了。