我在一个 https 网站上工作,一个与我的网站完全无关的插件(请求 http 元素)导致了安全问题。
我已禁用 (Windows) Internet 选项 -> 安全 -> 混合模式(这样我们就无法从 https 站点获取 http 资源)。
有了这个限制,只要我在 https 站点上,IE9 就会中止由插件运行的请求 http 元素的脚本(在这种情况下,有问题的插件是 http://www.freemake.com/ 视频下载器)。 控制台输出: SEC7111:HTTPS 安全受到 http://download.freemake.com/images/arrow.png 的威胁 - 链接到我的 https 网站 - SCRIPT16388:操作中止 此中止发生在 $(document).ready(...) 的之后/结束。
然而接下来发生的事情让我有些头疼...... SCRIPT438:对象不支持属性或方法“cookie” 这是指 $.cookie 函数(它也发生在许多其他 jQuery 函数中)。
jQuery 的各种功能似乎已被禁用或删除。我在上述中止操作之前运行了一些控制台日志: 日志:jQuery.cookie >>> true 日志:$.cookie >>> 真 日志:jQuery >>> 真 日志:$ >>> 真
如您所见,它们存在。中止操作后,我再次调用日志:
日志:jQuery.cookie >>> false 日志:$.cookie >>> false 日志:jQuery >>> 真 日志:$ >>> 真
插件脚本的中止操作如何影响我的网站?该站点正在托管它自己的 jQuery 库。
最佳答案
很可能他们共享同一个全局变量“$”以将其从全局范围使用中移除
jQuery.noConflict();
然后像这样把它赋给新的变量
$j = jQuery;
关于javascript - IE 中止插件脚本导致现场 JQuery 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19029025/