Jquery getScript(在 ajax 调用之后)使用 100% CPU

Jquery getScript (after ajax call) uses 100% CPU

我正在通过 ajax 在一个页面中加载 post,该页面上已经有几个我需要的脚本。我需要重新加载这些脚本并最初将它们放在正在调用的 ajax 页面中,但意识到(由于 chrome 控制台警告)这是一个禁忌,所以我正在尝试使用正确的(?)方法并在我的 ajax 调用完成后使用 jQuery.getScript 加载我的脚本(通过 .ajaxComplete 通知)。

当我尝试加载我的脚本时(请参阅下面的代码),它似乎可以工作,但是我在控制台中以某种循环方式收到了一系列无尽的 "success" 消息,直到我的机器正在使用接近 100% CPU,我需要强制退出我的浏览器。

知道是什么原因造成的吗?谢谢!

jQuery(document).ready(function(){

  jQuery.ajaxSetup({cache:false});
  jQuery(".post-link").click(function(){
    var post_link = $(this).attr("href");

    jQuery("#single-post-container").html("content loading");
    jQuery("#single-post-container").load(post_link);

    jQuery( document ).ajaxComplete(function() {
      jQuery( ".log" ).text( "Triggered ajaxComplete handler." );
      jQuery.getScript( "scriptone.js" )
      .done(function( script, textStatus ) {
        console.log( textStatus );
      })
      .fail(function( jqxhr, settings, exception ) {
        jQuery( "div.log" ).text( "Triggered ajaxError handler." );
      });
      jQuery.getScript( "scripttwo.js" )
      .done(function( script, textStatus ) {
        console.log( textStatus );
      })
      .fail(function( jqxhr, settings, exception ) {
        jQuery( "div.log" ).text( "Triggered ajaxError handler." );
      });

    });

    return false;
  });

您的 ajaxComplete 函数在每次 ajax 调用时执行。它本身包含 ajax 个调用,这些调用将全部触发此 ajaxComplete 函数,其中包含 ajax 个调用,这些调用将全部触发此 ajaxComplete 函数,其中包含 ajax 个调用这将全部触发此 ajax包含 ajax 个调用的完整函数,这些调用将全部触发此 ajax包含 ajax 个调用的完整函数,这些调用将全部触发此 ajax包含 ajax 个调用的完整函数将全部触发此 ajax 个包含 ajax 个调用的完整函数将全部触发此 ajax 个包含 ajax 个调用的完整函数这将触发这个 ajaxComplete function which...

是无限递归,不是循环。不要将 ajax 放入 ajax 完整函数中。