Ajax上传dom变慢,直到chrome崩溃

时间:2013-03-08 09:06:36

标签: jquery ajax

我有一个页面通过Ajax加载(长篇故事,但我需要在单个html文件中为启用javascript的浏览器中的多个页面,并且如果禁用js则不能加载它们)。通过Ajax加载的页面还有其他ajax链接。因此页面被加载,如果您单击该页面中的链接,它将加载内容并更新dom。这一切都运行正常,但如果你一直点击Ajax链接来更新内容,页面变得越来越慢,直到浏览器崩溃所以我猜它必须是一个内存链接(在Chrome中特别糟糕,但这可能是因为它的一个比Firefox更浪费资源。

我想知道是否可能因为在ajax回调中我再次调用该函数 - 我正在这样做,否则ajax内容中的链接将不会将ajax事件应用于它们(即使我以为.on应该以与.live相似的方式做到这一点)。无论如何,我认为以下内容对某人来说可能是显而易见的,非常感谢任何帮助。

function ajaxContent() {
    $('.ajaxContentWrapper').on('click', 'a.ajaxContentTrigger', function(event){
        event.preventDefault();
        var myUrl = $(this).attr("href") + " .ajaxContent";
        $(".ajaxContentWrapper").load(myUrl,function(){
            ajaxContent();  
        });

    return false;
    });
};

1 个答案:

答案 0 :(得分:1)

您是否尝试过在Chrome开发人员工具中查看ajax调用? 另外我不明白你提供的功能,这种方法有什么问题?:

$('.ajaxContentWrapper').on('click', 'a.ajaxContentTrigger', function(event) {
    event.preventDefault();
    var myUrl = $(this).attr("href") + " .ajaxContent";
    $(".ajaxContentWrapper").load(myUrl);
});