jQuery animate语法

时间:2016-03-11 03:30:47

标签: javascript jquery html css

我正在阅读有关jQuery的动画文档,但经过多次尝试,我认为SO的优秀人才可以提供帮助......

基本上,我无法获得持续时间,特定功能和完成功能,我得到了完整的功能,但是当我删除持续时间或某些东西时,它再次无效:

Fid:https://jsfiddle.net/jzhang172/mofnf7ua/

$(function(){

$(".hey").click(function(){ 
var height=$(".two").height(); 

console.log(height);
if (height >400){
$(".two").animate({
height:"0px",
opacity:0
},{duration:1000},complete:function(){alert('hey');
}
);
}//ifstatement end
else {
$(".two").animate({
height:"500px",
opacity:1


});
}
});//clickfunction end


});//function end
.hey{
  background:blue;
  height:50px;
  width:50px;
  transition:1s;
   
}
.two{
  background:red;
    height:500px;
  width:500px;
  transition:1s;
}
.no{
    opacity:1;
display:block;
  transition:1s;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.1/jquery.min.js"></script>
<div class="hey"></div>

<div class="hey two" id="two">fffffffff</div>

2 个答案:

答案 0 :(得分:1)

你在js代码中有一点错误。您忘记用if括号关闭}语句。

这是正确的JS代码:

 $(function(){

  $(".hey").click(function(){ 
    var height=$(".two").height(); 
        console.log(height);
    if (height >400){
      $(".two").animate({
        height:"0px",
        opacity:0
       }, {
            duration: 1000,
            complete: function(){alert('hey')}
           } 
       )     
     }//ifstatement end
    else {
      $(".two").animate({
        height:"500px",
        opacity:1
      });
    }   
  });//clickfunction end


});//function end

答案 1 :(得分:0)

您的语法已关闭。您在语句末尾缺少右括号。此外,您实际上并不需要在呼叫中实际使用“持续时间”或“完整”一词。试试这个:

$(".two").animate({
    height:"0px",
    opacity:0
}, 1000, function(){
    alert('hey');
});

文档将“持续时间”和“动画”这些词放在那里作为占位符,让你知道它们应该去哪里。