为什么jquery $(window).load()只能在页面重新加载而不是首次访问ie8?

时间:2013-12-09 19:01:12

标签: jquery html internet-explorer internet-explorer-8

当我在ie8中加载我的页面时我的$(窗口).load函数不会触发。如果我然后刷新页面就会触发。

我只在ie8中遇到此问题。

我的jquery版本是1.10.2(据我所知它在jquery 1中仍然支持ie8,对旧版ie浏览器的支持仅在jquery 2中被删除)

要清楚我正在加载标准.load函数语法内的内容:

$(window).load(function(){

});

在标记内部调用Jquery,并在正文内部调用load函数。

在尝试调试时,我尝试在body标签内添加一个快速脚本来检查jquery是否正在加载。

if (typeof jQuery != 'undefined') {
    alert("jQuery library is loaded!");
}else{
    alert("jQuery library is not found!");
}

不仅加载了“jquery库”!当页面首次加载时和每次刷新后都会正确警报,但现在.load函数正确触发。

当我再次删除此测试时,问题又回来了。

我尝试使用较旧的jquery版本(1.9.1和1.8.3),结果相同。

最后我尝试使用:

$(function () {

});

这会激发3/4的时间,我知道这与.load(它在.load之前触发)不完全相同,所以我假设我的问题与时间有关但我已经用完了想法。

任何人都可以给我任何建议让这个工作

1 个答案:

答案 0 :(得分:-1)

我知道这听起来很疯狂 - 虽然我们正在处理旧版IE,但请耐心等待 - 但您在宣布功能时是否尝试使用new关键字?

$(window).load(new Function(){
});