2015-01-15 14 views
0

我正在使用QueryLoader2,我想從#projects-listfooter p中刪除fadeInUp類,但它不是因爲某些原因而這樣做。我想要在slideDown()的回調函數之後立即刪除這些類。我格式不正確嗎?jQuery線不能在回調函數內工作

window.addEventListener('DOMContentLoaded', function() { 
    new QueryLoader2(document.querySelector("body"), { 
     barColor: "#fff", 
     backgroundColor: "#000", 
     percentage: true, 
     barHeight: 1, 
     minimumTime: 200, 
     fadeOutTime: 0, 
     onComplete: function() { 
      $('#masthead').slideDown(100, function(){ 
       $('#projects-list, footer p').show().addClass('fadeInUp'); 
      }); 
      $('#projects-list, footer p').removeClass('fadeInUp'); 
     } 
    }); 
}); 
+2

基於此代碼,您將刪除該類,然後在100 ms後添加它。要麼放置一些延遲,如setTimeout圍繞remove類或將其包含在slideDown complete內。 – rfornal

+0

@rfornal感謝'setTimeout'的工作。 – J82

+0

我要發佈這個,以便您可以標記正確的答案。謝謝。 – rfornal

回答

1

基於上面的代碼中,要刪除的類,然後將它添加100ms後,。這使得它看起來像fadeInUp類不會被刪除。

或者:

  1. 把一些延遲到拆除的過程中,如setTimeout圍繞刪除類,或
  2. 包括它的slideDown功能齊全的內部。
0

我沒有測試過這一點,但嘗試這樣的事情:

 onComplete: function() { 
      $('#masthead').slideDown(100, function(){ 
       //this is very you should have your code that you want to execute after 
       // slide down 
        $('#projects-list, footer p').removeClass('fadeInUp'); 
       // do you need the line below? 
       //$('#projects-list, footer p').show().addClass('fadeInUp'); 

      }); 

     }