jQuery动画

一,.hide()和.show()

.hide([duration ] [,easing ] [,complete ])
.hide(隐藏完这个过程执行的时间 ,隐藏的方式, 完成隐藏后执行的函数)

1, duration:动画持续多久
2,easing:表示过渡使用哪种缓动函数,jQuery自身提供"linear" 和 "swing"
3,complete:在动画完成时执行的函数

比起display的设置,优点:
1,这种隐藏展示,可以设置一些效果
2,不会改变DOM节点元素的display值(如果dom节点原本display为inline或inline-block,那么设置display来达到隐藏展示会改变节点本身的display属性)

.toggle( [duration ] [, easing ] [, complete ] )

用来切换元素的隐藏、显示

$("button").on("click",function(){
        $("p").toggle()
})

单击按钮,如果p本来显示在页面上,那么隐藏,否则相反

使用show和hide实现toggle的功能
方法一(设置状态):

 var isshow=1;
 $("button").on("click",function(){
 if(isshow===1){
       $("p").hide();
       isshow=0;
   }else{
    $("p").show();
    isshow=1;
  }
});

方法二(判断display是不是none)

 var $p=$("p");
 $("button").on("click",function(){

 if($p.css("display")==="none"){
    $p.show();
 }else{
$p.hide();
}
});

二,渐变(透明度的变化)

.fadeIn( [duration ] [, easing ] [, complete ] )

通过淡入的方式显示匹配元素,参数含义和上面相同

.fadeOut( [duration ] [, easing ] [, complete ] )

通过淡出的方式隐藏匹配元素

.fadeTo( duration, opacity [, easing ] [, complete ] )

到达指定透明度就不变了
调整匹配元素的透明度,方法通过匹配元素的不透明度做动画效果

.fadeToggle( [duration ] [, easing ] [, complete ] )

切换淡入淡出
通过匹配的元素的不透明度动画,来显示或隐藏它们,方法执行匹配元素的不透明度动画。当被可见元素调用时,元素不透明度一旦达到0,display样式属性设置为none ,所以元素不再影响页面的布局。
代码例子

三,滑动

.slideDown( [duration ] [, easing ] [, complete ] )

用滑动动画显示一个匹配元素,方法将给匹配元素的高度的动画

.slideUp( [duration ] [, easing ] [, complete ] )

用滑动动画隐藏一个匹配元素,方法将给匹配元素的高度的动画

.slideToggle( [duration ] [, easing ] [, complete ] )

用滑动动画显示或隐藏一个匹配元素,方法将给匹配元素的高度的动画
代码效果1
代码效果2

四,自定义动画

.animate( properties [, duration ] [, easing ] [, complete ] )

设置某个元素终极状态的效果,和整个过程执行的时间
这是一个异步的动画,如果函数放到animate的后面,那么动画和函数一一起执行的(异步),如果函数放到animate的最后一个参数作为回调函数,那么这个函数在动画执行完毕,再执行函数(同步)
properties是传入一个属性对象{width:"10px",opcity:0.3}
效果代码
注意:

图片.png

注意:
自定义动画不能设置背景颜色动画

五,停止动画

有两种:
1,停到当前动画,.stop()
2,清空当前队列里面的所有动画,停止所有动画,.finsh()

六,防止用户重复点击(类似ajax重复(正在发送又单击一次)发送请求)

解决办法:设置一个状态锁
var a=false
判断a=false,执行动画,正在执行动画(正在发送请求),a=true
动画执行完(客户端得到响应),a=false
代码示例

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 隐藏元素的hide方法 让页面上的元素不可见,一般可以通过设置css的display为none属性。但是通过css...
    老夫撩发少年狂阅读 4,821评论 0 2
  • jQuery中隐藏元素的hide方法 让页面上的元素不可见,一般可以通过设置css的display为none属性。...
    阿r阿r阅读 4,951评论 0 4
  • 没想到才做了没多久的日记,今天竟然真的通过它知道了女儿的心声。就在今晚女儿同时在两个本子上写下了同一件事,...
    蜗牛小于阅读 3,682评论 0 1
  • 昨天也是下意识的认为是价值决定价格,后来去查了下价值的定义,结果没想到光是百科里就有很长一大段,看得眼花。 今天老...
    念念1999阅读 1,756评论 2 1
  • Liu____阅读 1,634评论 0 0

友情链接更多精彩内容