我正在开发一个https网站,一个与我的网站完全无关的插件(请求http元素)导致安全问题。
我已禁用(Windows)Internet选项 - >安全 - >混合模式(这样我们就无法从https站点获取http资源)。
有了这个限制,只要我在https网站上,IE9就会中止插件运行请求http元素的脚本(在这种情况下,有问题的插件是http://www.freemake.com/视频下载器)。 控制台输出: SEC7111:http://download.freemake.com/images/arrow.png危及HTTPS安全性 - 链接到我的https网站 - SCRIPT16388:操作已中止 此中止在$(文档).ready(...) / end-after之后发生。
然而接下来发生的事情让我感到头痛...... SCRIPT438:对象不支持属性或方法'cookie' 这是指$ .cookie函数(许多其他jQuery函数也会发生这种情况)。
jQuery的各种功能似乎被禁用或删除。我在上面的中止操作之前运行一些控制台日志: 日志:jQuery.cookie>>>真正 日志:$ .cookie>>>真正 日志:jQuery>>>真正 日志:$>>>是的
你可以看到他们存在。中止操作后,我再次调用日志:
日志:jQuery.cookie>>>假 日志:$ .cookie>>>假 日志:jQuery>>>真正 日志:$>>>真
插件脚本的中止操作如何影响我的网站?该网站托管了自己的jQuery lib。
答案 0 :(得分:1)
他们可能正在共享相同的全局变量“$”,以将其从全局范围使用中删除
jQuery.noConflict();
然后将它分配给像这样的新变量
$ j = jQuery;