jQuery脚本每隔一段时间在IE中运行

时间:2013-02-21 19:49:48

标签: jquery internet-explorer

我正在使用jQuery构建一个应用程序,该应用程序从php文件请求json格式的数据以显示项目列表。我的脚本在Chrome和Firefox中运行得非常好,但是当涉及到IE时,我有一种奇怪的行为:我没有从控制台返回任何错误,但脚本仍然停留在“正在加载数据......”然后。 ...经过一段慷慨的休息之后,它大部分时间都会加载。我不知道IE是否只需要大量的秒钟来加载所有数据(由于Chrome和Firefox会在几毫秒内加载所有内容,这会很奇怪)或者我的脚本出现了一些未检测到的错误。

这里我发布了加载中涉及的脚本部分:

/*
This function hides the div containing the "Loading data..." message  
as the loading is complete.
*/  

$.hideLoading = function() {
        $("#loading").hide();
        $("#searcharea").show();
    };
/*
This function is responsible for getting the data from the php file and "shouts"
when it's finished.  
*/      
$.getData = function(field) {
    return $.ajax({
        url: 'lib/getData.php',
        data: { d: field },
        datatype: 'json'
    }).promise();
};

/*
When the two functions are done, hideLoading() is fired causing the "Loading data..."
message to disappear. 
*/ 

$.when(catData = $.getData('cat'), giftsData = $.getData('gifts') ).done(function() {
    $.hideLoading();
});

/*
They hand the loaded data to functions that will process it.
*/ 
catData.then(function(data) {
    $.parseCategories(data);
});

giftsData.then(function(data) {
    $.parseGiftData(data, targetId);
    giftsDataObj = data;
});

此代码是否有任何错误使IE每隔一段时间都有效?我可以以任何方式检测到是否存在一些实际负载?因为坦率地说我不明白它是如何起作用然后......卡住了。

编辑:我已从脚本中删除了所有console.log,现在看来,当我启动IE并且第一次加载页面时脚本正常工作,但如果我尝试重新加载页面,然后脚本卡住了。

0 个答案:

没有答案