jQuery动画

十二、动画

1.基本

show([s,[e],[fn]]) 显示
hide([s,[e],[fn]]) 隐藏
toggle([s],[e],[fn]) 显示隐藏切换

  • 参数均为speed(时间),easing(方式),fn
    .box {
            position: relative;
            width: 200px;
            height: 200px;
            border: 1px solid #000;
        }

    <button id="btn">动画</button>
    <div class="box">
        我在执行动画
    </div>
    var ishow = false;
    $('#btn').click(function () {
        if (!ishow) {
            $('.box').hide();
            ishow = true;
        }
        else {
            $('.box').show();
            ishow = false;
        }
//        $('.box').toggle();

    });

 2.滑动

slideDown([s],[e],[fn]) 下滑
slideUp([s,[e],[fn]]) 上滑
slideToggle([s],[e],[fn]) 上下滑切换

 

    //上下滑动
    //var isslide = false;
    $('#btn').click(function () {
        /*if(!isslide) {
            $('.box').slideUp();
            isslide = true;
        }else {
            $('.box').slideDown();
            isslide = false;
        }*/
        $('.box').slideToggle(1000, 'linear', function () {
            console.log('动画完成');
        });
    });

3.淡入淡出

fadeIn([s],[e],[fn]) 淡入
fadeOut([s],[e],[fn]) 淡出
fadeTo([[s],o,[e],[fn]])
fadeToggle([s,[e],[fn]]) 

    //淡入淡出的动画
    $('#btn').click(function () {
//       $('.box').fadeToggle();
        $('.box').fadeTo(1000,.4,'linear', function () {
           console.log('动画完成');
        });
    });

 4.自定义

animate(p,[s],[e],[fn])1.8* params(属性) speed easing fn
stop([c],[j])1.7*
delay(d,[q])
finish([queue])1.9+

    //自定义动画
    //delay是延迟动画
    $('#btn').click(function () {
        $('.box').animate({
            left: '200px'
        }, 1000, 'linear', function () {
           console.log('动画完成');
        }).delay(1000).animate({
            top: '200px'
        }, 1000, 'linear', function () {
            console.log('动画完成');
        });
    });

    /*
    * stop不带参 停止正在运行的动画
    * 代参 false false时与不带参效果相同
    * 1.是否立即清除动画的队列
    * 2.是否停止当前动画 立即完成
    * */

    $('#stop').click(function () {
       $('.box').stop(false, false);
//        $('.box').finish();//所有排队动画的属性跳转到最终值
    });

十三、动画队列

  • 动画效果的执行具有先后顺序,称为动画队列。

1. 一组元素上的动画效果

  • 当在一个animate()方法中应用多个属性时,动画是同时发生的
  • 当以链式的写法应用动画方法时,动画是按照顺序发生的

2. 多组元素上的动画效果

  • 默认情况下,动画都是同时发生的
  • 当以回调的形式应用动画方式时,动画是按照回调顺序发生的

另外,在动画方法中,要注意其它非动画方法会插队,例如css()方法要使非动画方法也按照顺序执行,需要把这些方法写在动画方法的回调函数中

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值