具有回调功能的jquery动画无法处理滚动

时间:2016-04-14 05:57:50

标签: jquery css3 animation jquery-callback

下面是我的代码的一部分,我正在使用带有回调函数的jquery animation

我想在header之后使用top:-141pxtop:-63px设置动画,此时间间隔应为动画,并$(window).scroll(function() { if ($(this).scrollTop() > 1){ $("#header").animate({ position: 'fixed', top: '-141px', },function(){ $(this).animate({ position: 'fixed', top: '-63px', }) }); } });

*{
  margin:0;
  padding:0
}

#header{
  height:141px;
  background:#333;
  color:#fff;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<header id="header">
  Header section
</header>

<div>
 <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
</div>
let jsonObject: [String: AnyObject] = [
            "status": "0" , "secondparameter" : "something"]


Alamofire.request(.POST,"myURL", parameters : jsonObject , encoding: .JSON).responseJSON
 { response in
    if let JSON = response.result.value {
                    print("JSON: \(JSON)")
                }
            } 

1 个答案:

答案 0 :(得分:1)

动画方法不支持position之类的属性,因此请使用css进行设置

&#13;
&#13;
$(window).scroll(function() {
  if ($(this).scrollTop() > 1) {

    $("#header").stop(true).css({
      position: 'fixed'
    }).animate({
      top: '-141px',
    }, function() {
      $(this).animate({
        top: '-63px',
      })
    });
  }
});
&#13;
* {
  margin: 0;
  padding: 0
}
#header {
  height: 141px;
  background: #333;
  color: #fff;
}
div {
  height: 1000px;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<header id="header">
  Header section
</header>

<div>
</div>
&#13;
&#13;
&#13;