2014-03-25 87 views
-3

好吧,所以我有這個功能,使用jquery 1.8.3工作正常,但它不再工作時,我使用jQuery 1.10.x或以上。jquery功能不工作後,jquery版本更新

<script type="text/javascript"> 
    $.ajaxSetup({cache: false}); 
    $(document).ready(function() { 
     // set up the click event 
     $('a.groups_loader').on('click', function() { 
      var toLoad = '<? echo base_url(); ?>user/account_groups/'; 
      $('.groupsajax').fadeOut(100, loadContent); 
      $('#load').remove(); 
      $('#groupswaiting').append('<div id="load" style="height: 400px;"><div id="loader-arm"><div id="loader-lp"><div id="loader-baLabel"></div></div><div id="loader-reflect"></div></div></div>'); 
      $('#load').fadeOut(1000); 
      function loadContent() { 
       $('.groupsajax').load(toLoad, '', function(response, status, xhr) { 
        if (status == 'error') { 
         var msg = "Sorry but there was an error: "; 
         $(".groupsajax").html(msg + xhr.status + " " + xhr.statusText); 
        } 
       }).fadeIn(4000, hideLoader()); 
      } 
      function hideLoader() { 
       $('#load').fadeOut(2000); 
      } 
      return false; 
     }); 
    }); 
</script> 

我想知道發生了什麼變化以及如何修復此問題。謝謝

+0

你應該檢查你的控制檯,是否有錯誤?順便說一句,似乎不對:'.fadeIn(4000,hideLoader());'應該'.fadeIn(4000,hideLoader);' –

+2

你的代碼不工作?我可以說你的'hideLoader'方法一直被稱爲過早,如果這是你一直使用的相同的代碼。 –

+1

在1.9中有很多改變,爲什麼不從[升級文檔](http://jquery.com/upgrade-guide/1.9/)和[migrate plugin](https://github.com/)開始的jquery/jQuery的遷移/)。 – Andy

回答

0

萬一它幫助別人......問題不在上面的腳本中,而是在頁面上的另一個類似(ajax)腳本。在上面的腳本中,我更新了.live('click', function().on('click', function(),因爲.live在較新版本的JQ中已被棄用。然而,頁面上的另一個腳本沒有被更新,仍然使用.live,這阻止了上述腳本的工作。因此,不要一次嘗試排除一個腳本的麻煩,請確保先將它們全部更新!