title: `queue` callback only executes once?
body: <p>I have a jQuery function that loops. What I want to do is for the <code>$bird_wing_left</code> element to rotate 30 degrees and then rotate back to 0 degree (in an infinite loop).</p>
  
  <pre><code>$(document).ready(function() {
  
      var rotate = 0;
  
      setInterval(function(){ 
  
          rotate = 30;
  
          $bird_wing_left.css({ transform: "rotate(" + rotate + "deg)" }).delay(1000).queue(function(){
              rotate = 0;
              $(this).css({ transform: "rotate(" + rotate + "deg)" });
          });
  
      }, 3000);
  });
  </code></pre>
  
  <p>The first time it did rotate 30 degrees, then to 0 degrees, then to 30 degrees. However, afterwards, it seems to ignore the callback (which resets the degree value to 0), hence, it just keeps on being at 30 degrees on and on.</p>
  
  <p>What could be the issue?</p>
  
  <p>This is the jsFiddle: <a href="https://jsfiddle.net/iamacatperson/86z26hdw/" rel="nofollow">https://jsfiddle.net/iamacatperson/86z26hdw/</a></p>