我有一个通过 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;
});
};