首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Internet 11执行ajax成功条件,但随后冻结

Internet 11执行ajax成功条件,但随后冻结
EN

Stack Overflow用户
提问于 2014-09-16 18:06:13
回答 1查看 2.9K关注 0票数 1

Internet 11似乎成功地执行了ajax调用。它在success条件下运行代码,一直运行到该块中的最后一行,更新HTML结构,然后冻结。我在IE中遇到的错误是:“由于运行时间很长,所以没有响应”。

我的代码在Chrome、Firefox和Safari!中工作

下面是用户单击分页链接时如何调用函数loadContentviaAjax

代码语言:javascript
复制
$(document).on('click', '.pagination-top a', function () {
    //CODE      
    loadContentviaAjax($(this).attr('href'), rawNewURL);
    console.log('20');
    return false;
});

下面是companysearch.js中代码块的一部分,它涉及:

代码语言:javascript
复制
function loadContentviaAjax(furl, rawNewURL) {
    var webserviceURL = rawNewURL;
    $.ajax({
        type: "GET",
        url: webserviceURL,
        data: "",
        cache: false,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        error: function () {
            $("#loadstatus").html($("#whoops").attr('data-message')).addClass('box_error');
        },
        success: function (data) {
            console.log('0');

            //MORE OF MY CODE

            console.log('18'); //<-- this line is still logged
        } 
    });                 
return false
}

我试过:-注释掉了我的AJAX调用的success块中的所有代码,在IE开发工具中尝试了设置断点。

但我不能把它缩小到引起这个问题的界限。

线

代码语言:javascript
复制
console.log('20');

也被击中,所以IE冻结之后,但除了loadContentviaAjax,我不能缩小什么是导致freeze....please帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-18 19:20:12

好了!我在IE11中找到了导致挂起的代码。我不太确定你要怎么解决,但我想你会想知道的。

在单击链接之前设置js调试器,然后暂停执行会显示javascript在http://pagead2.googlesyndication.com/pagead/osd.js中的所有时间。所以你的代码和它没什么关系。

逐步遍历意味着Google的代码被卡在一个无限循环中,从函数a跳到b到c,从而再次运行a。它将大部分时间花在对getBoundingClientRect的调用的catch块中,调用的iframe没有父级(抛出未指定的错误)。

当我阻止http://pagead2.googlesyndication.com/pagead/osd.js使用Fiddler下载时,您的导航工作正常。

我希望我能告诉你“改变这个或那个,它会起作用”,但我找不到它--缩小的谷歌代码很难调试。您的代码是否可能以某种方式使google容器成为孤儿?

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25875638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档