Jquery动画效果

      根据  jquery官网api文档编写   https://www.jq22.com/chm/jquery/index.html javascript

1、基本效果css

关于如下属性中的 easing 想要更好的去了解这个属性 https://www.runoob.com/jqueryui/api-easings.html 我想这里会更加清晰明了
html

1.show()    显示隐藏的匹配元素。语法:show([speed,[easing],[fn]])java

         speed:三种预约速度之一的字符串("slow","normal", or "fast")或表示动画时长的毫秒数值(如:1000)jquery

         fn:在动画完成时执行的函数,每一个元素执行一次 (回调函数)。api

2.hide()    显示隐藏的匹配元素。语法:hide([speed,[easing],[fn]])ide

         speed:三种预约速度之一的字符串("slow","normal", or "fast")或表示动画时长的毫秒数值(如:1000)函数

         fn:在动画完成时执行的函数,每一个元素执行一次 (回调函数)。学习

3.toggle()   1.9版本 .toggle() 方法删除,它很实用,若是元素是可见的,切换为隐藏的;若是元素是隐藏的,切换为可见的。
动画

2、滑动效果(与show,hide类似,不一样点是动画效果不一样如下几点都是 )

 

1.slideDown()       经过高度变化(向下增大)来动态地显示全部匹配的元素,在显示完成后可选地触发一个回调函数。

2.slideUp()       经过高度变化(向上减少)来动态地隐藏全部匹配的元素,在隐藏完成后可选地触发一个回调函数。

3.slideToggle()     经过高度变化来切换全部匹配元素的可见性,并在切换完成后可选地触发一个回调函数。

3、淡入淡出效果(淡入淡出是改变元素的透明度实现隐藏显现不会修改宽高,这是和上面的两种效果的区

1.fadeIn()              经过不透明度的变化来实现全部匹配元素的淡入效果,并在动画完成后可选地触发一个回调函数。

2.fadeOut()           经过不透明度的变化来实现全部匹配元素的淡出效果,并在动画完成后可选地触发一个回调函数。

3.fadeTo()            把全部匹配元素的不透明度以渐进方式调整到指定的不透明度,并在动画完成后可选地触发一个回调函数

                            eg:$("img:eq(2)").fadeTo(3000,0.3);         // fadeTo()方法 将图片以3000毫秒的时间过渡到0,3的透明度

4.fadeToggle()    经过不透明度的变化来开关全部匹配元素的淡入和淡出效果,并在动画完成后可选地触发一个回调函数。

4、自定义效果(自定义效果至关于集以上效果于一身,能够改变元素的宽高,透明度等属性.....

1.animate()         animate() 方法执行 CSS 属性集的自定义动画。该方法经过CSS样式将元素从一个状态改变为另外一个状态。

                           CSS属性值是逐渐改变的,这样就能够建立动画效果。只有数字值可建立动画(好比 "margin:30px")。

                           字符串值没法建立动画(好比 "background-color:red")。

语法以下:

$("button:eq(10)").click(function(){ //animate()方法
                    $("img:eq(3)").animate({     //让图片经历3秒宽度变成200px 高度变成200px 透明度变成0.5
                        width:"300px",
                        height:"200px",
                        opacity:"0.5",
                    },3000);
               });

2.stop()          中止全部在指定元素上正在运行的动画。若是队列中有等待执行的动画(而且clearQueue没有设为true),他们将被立刻执行

                   方法 属性:  stop([clearQueue],[jumpToEnd])

                                         clearQueue:若是设置成true,则清空队列。能够当即结束动画。

                                         jumpToEnd:若是设置成true,则完成队列。能够当即完成动画。

3.delay()        设置一个延时来推迟执行队列中以后的项目。jQuery 1.4新增。用于将队列中的函数延时执行。他既能够推迟动画队列的执行,也能够用于自定义队列。

4.finish()      中止当前正在运行的动画,删除全部排队的动画,并完成匹配元素全部的动画。 finish()和stop有着类似之处,不一样点在于,stop是中止,stop(true,true)

                    是结束当前的动画,finish不一样他将会清除该元素上全部的动画,直接到动画完成的最终效果。

6、设置效果

 

 

 

 效果的使用关键是如何搭配使用,在何时使用,能够嵌套,能够循环等等。简单的案列执行起来很简单。emmmmmmm最后两张截图原谅我不知道怎么写案列QAQ

我这里根据以上的效果方法写了简单案例以下:

<html>
    <head>
        <meta charset="utf-8" />
        <title>动画效果</title>
        <script src="./js/jquery-3.4.1.js" type="text/javascript" charset="utf-8"></script>
    </head>
    <style type="text/css">
          *{
              padding: 0;
              margin: 0;
          }
          img{width: 100px; height: 100px;opacity: ;}
    </style>
    <body>
        <h3>基本效果</h3>
        <img src="./img/1.jpg" >
        <button type="button">hide</button>
        <button type="button">show</button>
        <button type="button">Toggle</button>
        <br>
        <h3>滑动效果</h3>
        <img src="./img/2.jpg" >
        <button type="button">slideDown</button>
        <button type="button">slideUp</button>
        <button type="button">slideToggle</button>
        <br>
        <h3>淡入淡出效果</h3>
        <img src="./img/3.jpg" >
        <button type="button">fadeIn</button>
        <button type="button">fadeOut</button>
        <button type="button">fadeTo</button>
        <button type="button">fadeToggle</button>
        <br>
        <h3>自定义效果</h3>
        <img src="./img/4.jpg" >
        <button type="button">animate</button>
        <button type="button">stop</button>
        <button type="button">delay</button>
        <button type="button">finish</button>
        
        <script type="text/javascript">
             $(function(){
                 //基本效果
                $("button:eq(0)").click(function(){
                    $("img:eq(0)").hide("slow")        // hide()方法
                });
                $("button:eq(1)").click(function(){
                    $("img:eq(0)").show("slow")        // show()方法
                });
                $("button:eq(2)").click(function(){
                    $("img:eq(0)").toggle("slow")        // show()方法
                });
                 //滑动效果
                $("button:eq(3)").click(function(){
                    $("img:eq(1)").slideDown("slow");   //slideDown()方法
                });
                $("button:eq(4)").click(function(){ 
                    $("img:eq(1)").slideUp("slow");      //slideUp()方法
                });
                $("button:eq(5)").click(function(){
                    $("img:eq(1)").slideToggle("slow");   //slideToggle()方法
                });
                // 淡入淡出效果
                $("button:eq(6)").click(function(){
                    $("img:eq(2)").fadeIn(3000);             // fadeIn()方法
                });
                $("button:eq(7)").click(function(){
                    $("img:eq(2)").fadeOut(3000);            // fadeOut()方法
                });
                $("button:eq(8)").click(function(){
                    $("img:eq(2)").fadeTo(3000,0.3);         // fadeTo()方法
                });
                $("button:eq(9)").click(function(){
                    $("img:eq(2)").fadeToggle(3000);          // fadeToggle()方法
                });
                //自定义效果
                $("button:eq(10)").click(function(){ //animate()方法
                    $("img:eq(3)").animate({     //让图片经历3秒 透明度变成0.1
                        opacity:"0.1",
                    },3000,function(){
                        $("img:eq(3)").animate({     //让图片经历3秒透明度变成1
                            opacity:"1",
                        },3000);
                    });
                });
                
                $("button:eq(11)").click(function(){
                    $("img:eq(3)").stop(true,true);         //stop()方法,中止改元素上的动画   stop参数可为true,true如stop(true,true)
                });
                
                $("button:eq(12)").click(function(){ 
                    $("img:eq(3)").slideUp(3000).delay(2000).fadeIn(3000)  //delay()方法 在执行完slideUp()方法后等待2秒在执行fadeIn()方法
                });
                
                $("button:eq(13)").click(function(){
                    $("img:eq(3)").finish()  //finish()方法清除该元素的全部排队的动画
                });
             });
        </script>
    </body>
</html>

效果:

 我的学习,内容拙劣,

相关文章
相关标签/搜索