这个问题可能属于SuperUser,但无论如何我会试着在这里提问,因为我相信,一些网页开发人员可能会遇到这种奇怪的行为。
在VirtualBox上测试IE8 / winXP兼容性的网站时,我遇到了$ is undefined
的奇怪问题,这是由jQuery(和jQuery UI)未被包含引起的,当被相对路径引用时,它解析为{ {1}}网址。看似因为它们的尺寸太大(超过200KB)。
只需将指向这两个大文件的链接替换为file:///
,就可以解决这个问题。
但问题是:为什么会这样?
是否配置错误?一个bug?一个已知的设计决定?
详细说明:
http://
答案 0 :(得分:1)
第一个问题:IE加载此HTML文件时使用的是哪个区域?查看IE窗口右下角的“我的电脑”或“本地内联网”。即使这个问题出现在其他浏览器中,我很想知道IE看到你的共享文件夹是什么。
这听起来更像是浏览器问题,而不是VirtualBox做一些有趣的事情。 IE现在对file:// URI的限制非常严格,其他浏览器也不同程度......
其他.js文件是否在相关页面中加载正常或是否也被阻止?那些更小的jQuery的旧版本(如v1.3.2)呢?
是否有某些原因要从文件共享而不是从Web服务器加载它们?如果将所有文件从共享驱动器复制到guest虚拟机c:\ drive?
,是否会得到相同的结果?升级到VirtualBox 4.1.12怎么样?我怀疑它会有所作为,但它可能值得一试。
最后一个想法是jQuery有一些调用可以触发IE(可能还有其他人)阻止脚本 - 特别是调用new ActiveXObject
。也许创建一个小的.js文件来尝试将其作为问题进行ping操作。沿着同样的路线 - 如果你创建一个垃圾会发生什么,虽然合法的.js文件很大 - 比如说400K的东西:
var a = "... really, really long string";
var b = "... another really long string";
...