jQuery 中的 elem.setAttribute 破坏 SSL(混合活动内容错误)

Posted

技术标签:

【中文标题】jQuery 中的 elem.setAttribute 破坏 SSL(混合活动内容错误)【英文标题】:elem.setAttribute in jQuery breaking SSL (mixed active content error) 【发布时间】:2014-02-23 05:22:40 【问题描述】:

谁能解释我的滑块插件导致的这个错误,它破坏了主页的 SSL:

“https://...”处的页面通过 HTTPS 加载,但显示 来自 'http://....

的不安全内容

在 Firebug 中,我收到指向 jQuery.js 中特定行的特定错误:

在安全页面“http://...

上加载混合(不安全)显示内容

elem.setAttribute(name, value + "");

这是 jQuery 1.8.3。由于 IE8 错误,我不想使用 jQuery 2.0,而且它破坏了我的灯箱插件。

【问题讨论】:

那不是 jQuery,而且这个问题根本与 jQuery 无关。您正在使用http 协议在具有https 协议的站点中加载图像(可能?)。 我明白你的意思,但是为什么 Firebug 会指向 jQuery 中的那一行作为错误的来源? 【参考方案1】:

您收到此错误是因为您的网页使用 HTTPS,"all active mixed content delivered via HTTP on this pages will be blocked by default"。

为了更清楚,“混合活动内容”是"content that has access to all or parts of the Document Object Model of the HTTPS page"

因此,要修复此错误,您需要确保您使用的是使用 HTTPS 提供的引用(例如 javascript 文件)。如果它们在您自己的网站上,您应该能够将源链接从“http”更改为“https”。如果它们托管在远程,请查看它们是否也可以通过 HTTPS 访问。

【讨论】:

是的,我明白这一点,但我不明白为什么 Firebug 指向 jQuery.js 中的那一行 elem.setAttribute( name, value + "" );

以上是关于jQuery 中的 elem.setAttribute 破坏 SSL(混合活动内容错误)的主要内容,如果未能解决你的问题,请参考以下文章

JQuery中的$符号的作用----网摘

Jquery中的事件

Jquery中的事件和动画

JQuery中的Ajax

锋利的jQuery ——jQuery中的DOM操作

jQuery中的数组函数