jQuery 之 自定义动画

本文详细探讨了jQuery库中的自定义动画功能,包括如何创建复杂的动画序列、使用animate()方法进行平滑过渡,以及结合CSS属性实现独特的视觉效果。通过实例代码,读者将掌握如何在网页中实现自定义的滑动、淡入淡出等动态效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>24_自定义动画</title>
    <style type="text/css">
        * {
            margin: 0px;
        }

        .div1 {
            position: absolute;
            width: 100px;
            height: 100px;
            top: 50px;
            left: 300px;
            background: red;
        }
    </style>
</head>
<body>
<button id="btn1">逐渐扩大</button>
<button id="btn2">移动到指定位置</button>
<button id="btn3">移动指定距离</button>
<button id="btn4">停止动画</button>

<div class="div1">
    爱在西元前,学在尚硅谷
</div>

<!--
jQuery动画本质 : 在指定时间内不断改变元素样式值来实现的
1. animate(): 自定义动画效果的动画
2. stop(): 停止动画

-->
<script src="js/jquery-1.10.1.js" type="text/javascript"></script>
<script type="text/javascript">
    /*
     需求:
      1. 逐渐扩大
        1). 宽/高都扩为200px
        2). 宽先扩为200px, 高后扩为200px
      2. 移动到指定位置
        1).移动到(500, 100)处
        2).移动到(100, 20)处
      3.移动指定的距离
        1). 移动距离为(100, 50)
        2). 移动距离为(-100, -20)
      4. 停止动画
     */
    var $div1 = $('.div1')

    /*
     1. 逐渐扩大
       1). 宽/高都扩为200px
       2). 宽先扩为200px, 高后扩为200px
     */
    $('#btn1').click(function () {
        /*
        $div1.animate({
          width: 200,
          height: 200
        }, 1000)
        */
        $div1
            .animate({
                width: 200
            }, 1000)
            .animate({
                height: 200
            }, 1000)

    })

    /*
     2. 移动到指定位置
       1).移动到(500, 100)处
       2).移动到(100, 20)处
     */
    $('#btn2').click(function () {
        // 1).移动到(500, 100)处
        /*
        $div1.animate({ // 向右下移动
          left: 500,
          top: 100
        }, 1000)
        */

        // 2).移动到(100, 20)处
        $div1.animate({ // 向左上移动
            left: 100,  // 300
            top: 20  // 50
        }, 1000)
    })

    /*
     3.移动指定的距离
       1). 移动距离为(100, 50)
       2). 移动距离为(-100, -20)
     */
    $('#btn3').click(function () {
        // 1). 移动距离为(100, 50)
        /*$div1.animate({
          left: '+=100',
          top: '+=50'
        }, 1000)*/

        // 2). 移动距离为(-100, -20)
        $div1.animate({
            left: '-=100',
            top: '-=20'
        }, 3000)
    })

    $('#btn4').click(function () {
        $div1.stop()
    })

</script>
</body>
</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值