我在IE6中遇到$(文件).ready 未执行的问题,但只有在清除了Internet临时文件后才会出现问题(实际上这是第一次加载此页面)。刷新页面或后续页面加载时,一切正常。
这是当前的设置:
带有框架的门户页面,这个门户网站页面也有一个window.load方法(也许我们有jQuery准备好的竞争问题?):
window.onload = function () {
try {
expireCookie("COOKIE%2DID");
loadMenu();
} catch (pcbException) {
reportError(pcbException);
}
}
< script language =“javascript”>
尝试{
$( “#CR”)除去();
} 赶上(前){ }
$(document).ready(function(){ alert(typeof $); //检查方法是否正在执行 RendererPageIsLoading(); //在组合框中加载数据并隐藏div });
< /脚本> < /体>
我正在使用最新版本的jQuery(1.4.2)。 编辑:jquery正在加载到当前页面的head部分:
<script language="javascript" type="text/javascript" src="https://fulldomain/js/jquery.js"></script>
以下主题没有带来任何解决方案: jQuery $(document).ready() failing in IE6
答案 0 :(得分:3)
有人建议(他之后删除了他的回答)将一个方法附加到window.onload确实分离了$(document).ready()事件中定义的方法。但是,由于错误仅在第一次加载页面时发生,因此我认为这必须是缓存问题。
经过进一步调查后,我们发现IE6遇到了透明png无法正确加载的问题。因此浏览器正在等待图像加载,IE6在触发DOM就绪事件之前等待图像。
结论:如果IE6出现问题,还要检查透明png 图像。
答案 1 :(得分:0)
如果要在“/ body”标记之前添加脚本,则无需使用:
$(document).ready(...);
当文件准备就绪时(来自“/ body”和“/ html”)。
如果您的外部JavaScript文件可能比页面加载速度更快,那么它非常有用 - 在这种情况下,它会延迟执行直到DOM准备好(或者在某些浏览器中延迟DOM和HTTP请求...这是更像是window.onload,等待所有图像,例如)。