Jquery 延迟未处理的错误

Jquery delay Unhandled Error

这是我的代码

$(document).ready(function(){
function margin(){
    $('.logo').animate({ marginLeft : "150px"}, 1500).delay(4000).animate({ marginLeft : "350px"}, 1500, function() { 
        delay(4000).margin(); 
    }); 
}
margin();
}); 

我想让我的代码无限循环,但它不起作用。 Firebug 的控制台显示:'Unhandled Error: Undefined variable: delay'(第 4 行)。我错过了什么?

delay出现undefined?尝试用 $.fn.delay 代替调用 undefined delay 函数;利用 .queue() 递归调用 margin

$(document).ready(function() {
  function margin() {
    $(".logo").animate({
        marginLeft: "150px"
      }, 1500).delay(4000)
      .animate({
        marginLeft: "350px"
      }, 1500, function() {
        $(this).delay(4000, "margin")
          .queue("margin", margin).dequeue("margin");
      });
  }
  margin();
});
.logo {
  background: olive;
  width: 50px;
  height: 50px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<div class="logo">abc</div>