JQuery学习笔记(二)--- 动画

news/2024/7/10 23:42:02 标签: jquery, 动画

一、动画

1、介绍

​ jQuery 给我们封装了很多动画效果方法,我们只需要调用即可轻松实现对应的动画效果。常见的动画效果如下:

方法作用
show()、hide()、toggle()显示或隐藏元素
slideDown()、slideUp()、slideToggle()元素划入划出效果
fadeIn() 、fadeOut() 、 fadeToggle()、 fadeTo()元素淡入淡出效果
animate()自定义动画
stop()停止动画

​ 还有一点要特别注意:jquery 中的动画一旦被触发,就一定会执行,如果短时间触发多个动画效果,那么这些动画效果将会排队执行,但是我们可以通过 stop 停止动画排队,具体后面我们会讲到。

2、显示与隐藏

​ jQuery提供的实现元素的显示与隐藏的方法有:show()、hide()、toggle()。在实际应用中,我们通常是直接调用这些方法,但其具体语法规范如下:

show():

在这里插入图片描述

hide():

在这里插入图片描述

toggle():

在这里插入图片描述

案例代码:
<body>
    <button>显示</button>
    <button>隐藏</button>
    <button>切换</button>
    <div></div>
    <script>
        $(function() {
            $("button").eq(0).click(function() {
                $("div").show(1000, function() {
                    alert(1);
                });
            })
            $("button").eq(1).click(function() {
                $("div").hide(1000, function() {
                    alert(1);
                });
            })
            // 切换 是指 如果你正在显示,就让你隐藏  如果你隐藏 就让你显示
            $("button").eq(2).click(function() {
              $("div").toggle(1000);
            })
            // 一般情况下,我们都不加参数直接显示隐藏就可以了
        });
    </script>
</body>

3、滑入与滑出

​ jQuery中提供的实现元素滑入滑出的方法有:slideDown()、slideUp()、slideToggle()。在实际应用中,我们通常是直接调用这些方法,但其具体语法规范如下:

slideDown():

在这里插入图片描述

slideUp():

在这里插入图片描述

slideToggle():

在这里插入图片描述

案例代码:
<body>
    <button>下拉滑动</button>
    <button>上拉滑动</button>
    <button>切换滑动</button>
    <div></div>
    <script>
        $(function() {
            $("button").eq(0).click(function() {
                // 下滑动 slideDown()
                $("div").slideDown();
            })
            $("button").eq(1).click(function() {
                // 上滑动 slideUp()
                $("div").slideUp(500);
            })
            $("button").eq(2).click(function() {
                // 滑动切换 slideToggle()
                $("div").slideToggle(500);
            });
        });
    </script>
</body>

4、淡入淡出

​ jQuery中提供的实现元素淡入淡出的方法有:fadeIn()、fadeOut()、fadeToggle()、fadeTo()。在实际应用中,我们通常是直接调用这些方法,但其具体语法规范如下:

fadeIn():

在这里插入图片描述

fadeOut():

在这里插入图片描述

fadeToggle():

在这里插入图片描述

fadeTo():

在这里插入图片描述

案例代码:
<body>
    <button>淡入效果</button>
    <button>淡出效果</button>
    <button>淡入淡出切换</button>
    <button>修改透明度</button>
    <div></div>
    <script>
        $(function() {
            $("button").eq(0).click(function() {
                // 淡入 fadeIn()
                $("div").fadeIn(1000);
            })
            $("button").eq(1).click(function() {
                // 淡出 fadeOut()
                $("div").fadeOut(1000);
            })
            $("button").eq(2).click(function() {
                // 淡入淡出切换 fadeToggle()
                $("div").fadeToggle(1000);
            });
            $("button").eq(3).click(function() {
                //  修改透明度 fadeTo() 这个速度和透明度要必须写
                $("div").fadeTo(1000, 0.5);
            });
        });
    </script>
</body>

5、自定义动画

​ 自定义动画的功能非常强大,几乎能实现我们想要的任何动画效果,方法为:animate(),通过参数来调节要实现的动画效果,具体语法规范为:

在这里插入图片描述

案例代码:
<body>
    <button>动起来</button>
    <div></div>
    <script>
        $(function() {
            $("button").click(function() {
                $("div").animate({
                    left: 500,
                    top: 300,
                    opacity: .4,
                    width: 500
                }, 500);
            })
        })
    </script>
</body>

6、停止动画排队

​ 在 jQuery 中动画效果一旦被触发就一定会执行,如果在短时间内触发多次动画,就会造成动画延迟,多个动画排队执行的效果,但在这种情况下,我们通常只需要显示最后一个动画即可,所以此时我们需要用到 stop() 的方法。

​ stop() 方法的作用是立即停止上一次的动画效果,无论动画进行到哪一步。所以为了避免动画排队,我们需要在每次使用动画之前,先调用 stop() 停止上一次动画,再调用新的动画

案例代码:
        $(function() {
             鼠标经过
             $(".nav>li").mouseover(function() {
                 // $(this) jQuery 当前元素  this不要加引号
                 // show() 显示元素  hide() 隐藏元素
                 // stop 方法必须写到动画的前面
                 $(this).children("ul").stop().slideDown(200);
             });
             // 鼠标离开
            $(".nav>li").mouseout(function() {
                // stop 方法必须写到动画的前面
                $(this).children("ul").stop().slideUp(200);
             });
        })

7、事件切换效果

​ jQuery 中为我们添加了一个事件 hover() ,功能与 css 的伪类 :hover 类似,参数为鼠标移动到元素上触发的函数和鼠标移出元素时触发的函数。

语法:
hover([over,]out)     // 其中over和out为两个函数
  • over:鼠标移到元素上要触发的函数(相当于mouseenter 事件)
  • out:鼠标移出元素要触发的函数(相当于mouseleave 事件)
  • 如果只写一个函数,则鼠标经过和离开都会触发它
代码案例:
      // 我们将上面的停止排队代码 用 hover 重新写一次
      $(function() {
            // 1. 事件切换 hover 就是鼠标经过和离开的复合写法
            // $(".nav>li").hover(function() {
            //     $(this).children("ul").stop().slideDown(200);
            // }, function() {
            //     $(this).children("ul").stop().slideUp(200);
            // });
            // 2. 事件切换 hover  如果只写一个函数,那么鼠标经过和鼠标离开都会触发这个函数
            $(".nav>li").hover(function() {
                // stop 方法必须写到动画的前面
                $(this).children("ul").stop().slideToggle();
            });
        })

http://www.niftyadmin.cn/n/803612.html

相关文章

jQuery学习笔记(三)--- 属性操作和元素操作

一、属性操作 ​ jQuery 中对属性进行操作的方法有&#xff1a;prop()、attr()、data()、html()、text()、val()。他们分别用来修改不同类别的元素属性。 1、prop() 操作元素的固有属性 ​ 元素的固有属性是指元素本身自带的属性&#xff0c;比如 img 标签里面的 src、a 标签…

jQuery学习笔记(四)--- 元素尺寸、位置操作和深浅拷贝

一、尺寸操作 1、概念 ​ jQuery 尺寸操作包括元素宽高的获取和设置&#xff0c;而且不同的方法对应着不同的盒子模型&#xff08;标准盒模型和怪异盒模型&#xff09; 2、方法 方法作用width() / height()获取或设置对应元素的宽度或高度innerWidth() / innerHeight()获取…

jQuery学习笔记(五)--- 事件与多库共存

一、事件注册 1、概念 ​ jQuery 提供了方便的事件注册机制&#xff0c;操作简单&#xff0c;且不用担心事件覆盖问题。但也有一定的缺点&#xff0c;比如&#xff1a;普通的事件注册不能做事件委托&#xff0c;且不能实现事件解绑&#xff0c;需要借助其他方法等。 2、语法…

PPT模板下载

Officeplus_微软官方office模板服务平台_ ppt模板_会员免费_工作总结_求职简历https://www.officeplus.cn/ https://www.officeplus.cn/

Ajax学习笔记(一)--- 基础概念和基本使用

一、基础 1、概念 ​ Ajax 异步 JavaScript XML 。Ajax是一种能够在不重新加载整个页面的前提下&#xff0c;与服务器进行交互并更新部分页面内容的技术。能实现页面无刷新且更新数据&#xff0c;大大提高了用户的体验。所有的 Ajax 代码要写到 script 标签之中。 2、原理…

Scanner报错---zhaoYQ

注意&#xff1a;Scanner基本不用&#xff0c;只是在java学期的初期进行测试使用&#xff0c;以后99.9%不用&#xff0c;所以不用太过在意。 1.错误描述&#xff1a; new一个Scanner&#xff0c;然后用nextXX()方法输入&#xff0c;用完之后关闭 然后再new一个Scanner&#x…

Ajax学习笔记(二)--- 模板引擎和FormData 对象

一、模板引擎 1、概念 ​ 原生 ajax 项目中存在数据和HTML字符串拼接导致代码混乱&#xff0c;拼接容易出错&#xff0c;业务逻辑和用户界面混合&#xff0c;代码不易维护的问题。为了解决这些问题我们引入模板引擎这个工具。 ​ art-template 是一个简约、超快的模板引擎&a…