我构建了this site并且我已经在每个浏览器上对它进行了测试,我可以从IE8开始使用它。一切都在我的IE8版本以及我能够测试的任何版本上正常工作。
问题:我的网站在我的客户端IE8版本中无法正常运行。他们报告的错误消息表明jQuery没有被加载,这(不足为奇)是左右打破脚本。他们向我保证,没有防火墙阻止jquery从外部站点加载。我还让他们确认在Internet选项下启用了Active Scripting。我已经没有想法为什么他们的 IE8不能正常工作但是我的。
他们在Windows XP上。这是他给出的IE8的完整版本号:v8.06001.18702c0 128bit
有谁知道可能会发生什么?我是否需要以某种方式尝试追踪那个确切的版本?
客户端向我展示了错误消息的屏幕截图。我检查了引用的每一行,一旦在这些脚本中引用了jQuery,它就基本上抛出了错误。
答案 0 :(得分:2)
作为快速修复,在远程服务器不可用的情况下,在调用远程脚本时始终使用回退:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript"></script>
<script>window.jQuery || document.write('<script src="/js/jquery.js" type="text/javascript"><\/script>')</script>
这样,如果找不到远程,则加载本地版本。不确定这会解决你的问题,但值得一试。另外,在使用以下方法调用任何方法之前,请确保实际加载了jQuery:
jQuery(document).ready(function($)
{
...your script
}
答案 1 :(得分:0)
我不完全理解这个解决方案,但是当客户端打开开发人员工具(工具&gt;开发人员工具)并从“IE8兼容性视图模式”切换到IE8模式时问题得到了解决。对我(以及我认识的其他人)来说,这已经是默认设置了。客户端在一个办公室工作,在他们的所有软件上都有很多防火墙和安全设置,所以我认为他们的浏览器是出于安全相关的原因而设置的。
我做了一个快速查看,发现这个有关兼容模式的合理指导性页面: http://blogs.msdn.com/b/askie/archive/2009/03/23/understanding-compatibility-modes-in-internet-explorer-8.aspx