JQ操作和动画

1.JQ操作类

 1 <input type="button" value="添加类" id="add" />
 2         <input type="button" value="移除类" id="remove" />
 3         <input type="button" value="判断类" id="has" />
 4         <input type="button" value="切换类" id="toggle" />
 5         <div class="box" class="color">我是div盒子</div>
 6         <script src="./jquery-1.12.4.js"></script>
 7         <script>
 8             $(function(){
 9                 // 添加类
10                 $("#add").click(function(){
11                     // 设置单个类
12                     // $(".box").addClass("bgc");
13                     
14                     // 一次性添加多个类  添加多个类 把全部的类放在一个字符串里 用空格隔开
15                     // 如果不加空格 默认一个类
16                     // 和classList添加类的区别:classList添加多个类传参 用双引号包括起来 每个类之间用逗号隔开
17                     $(".box").addClass("font30 w300 h300 bgc");
18                 })
19                 // 移除类
20                 $("#remove").click(function(){
21                     
22                     // 参数什么都不传 那么就表示移除全部的的类 包括原本设置默认的样式
23                     // 和classList添加类的区别:classList添加多个类传参 用双引号包括起来 每个类之间用逗号隔开
24                     
25                     $(".box").removeClass();
26                 })
27                 // 判断类
28                 $("#has").click(function(){
29                     // 判断元素是否拥有某个类 如果有就返回true 否则false
30                     console.log($(".box").hasClass("bgc"));
31                 })
32                 // 切换类
33                 $("#toggle").click(function(){
34                 // 判断元素是否拥有某个类 如果有就返回true 否则false
35                     $(".box").toggleClass("font30");
36                 })
37             })
38         </script>

2.JQ动画

  JQ动画分为以下几类:

  1.动画的显示隐藏

 1 <body>
 2         <input type="button" value="显示" id="show" />
 3         <input type="button" value="隐藏" id="hide" />
 4         <input type="button" value="切换" id="toggle" />
 5         <div class="one"></div>
 6     </body>
 7     <script src="./jquery-1.12.4.js"></script>
 8     <script>
 9         $(function(){
10             /* show()方法 有两个参数
11              可以填毫秒数 也可以填代表时间的字符串"slow" "normal" "fast"
12              参数二 动画执行完毕之后 他的回调函数
13              */
14             $("#show").click(function(){
15                 // 如果show方法不参加任何参数 就表示没有有动画
16                 // $(".one").show();
17                 
18                 // 只要给了参数 那么就会有动画
19                 $(".one").show("nomal");
20                 
21 //                 $(".one").show("slow",function(){
22 //                     alert("我的动画走完了")
23 //                 })
24             })
25             
26             // 隐藏
27             $("#hide").click(function(){
28                 $(".one").hide(1000,function(){
29                     alert("结束了");
30                 });
31             })
32             // 切换
33             $("#toggle").click(function(){
34                 $(".one").toggle(1000);
35             })
36         })
37     </script>
  2.动画滑入滑出
 1 <body>
 2         <input type="button" value="滑入" id="slideDown" />
 3         <input type="button" value="滑出" id="slideUp" />
 4         <input type="button" value="切换" id="slideToggle" />
 5         <div class="one"></div>
 6     </body>
 7     <script src="./jquery-1.12.4.js"></script>
 8     <script>
 9         $(function(){
10             // 滑入
11             // slideDown 有两个参数
12             // 参数1 动画时间长  可以填毫秒数 也可以填代表时间的字符串"slow" "normal" "fast"
13             // 参数二 动画执行完毕之后 他的回调函数
14             $("#slideDown").click(function(){
15                 // 如果slideDown 不写参数 那么就相当于给了一个默认的时长 normal
16                 $(".one").slideDown();
17                 $(".two").slideDown("normal");
18             })
19             // 滑出
20             $("#slideUp").click(function(){
21                 $(".one").slideUp(1000,function(){
22                     alert("结束了");
23                 });
24             })
25             // 切换
26             $("#slideToggle").click(function(){
27                 $(".one").slideToggle(2000,function(){
28                     alert("结束了");
29                 });
30             })
31         })
32     </script>

  3..动画淡入淡出

 1 <body>
 2         <input type="button" value="淡入" id="fadeIn" />
 3         <input type="button" value="淡出" id="fadeOut" />
 4         <input type="button" value="切换" id="fadeToggle" />
 5         <input type="button" value="淡入到哪里" id="fadeTo"/>
 6         <div class="one"></div>
 7 
 8     </body>
 9     <script src="./jquery-1.12.4.js"></script>
10     <script>
11         $(function(){
12             // 淡入
13             $("#fadeIn").click(function(){
14                 $(".one").fadeIn(1000,function(){
15                     alert("风花雪月")
16                 });
17             })
18             // 淡出
19             $("#fadeOut").click(function(){
20                 $(".one").fadeOut(1000,function(){
21                     alert("花前月下")
22                 });
23             })
24             // 切换
25             $("#fadeToggle").click(function(){
26                 $(".one").fadeToggle(1000,function(){
27                     alert("风和日丽")
28                 });
29             })
30             // 淡入到哪里  第二个参数表示淡入目标透明度
31             $("#fadeTo").click(function(){
32                 $(".one").fadeTo(1000,0.5)
33                 });
34         })
35     </script>

  4.动画队列

<body>
        <input type="button" value="开始" id="start" />
        <input type="button" value="结束" id="stop" />
        <div class="box"></div>
        <script src="./jquery-1.12.4.js"></script>
        <script>
            // 动画队列 在同一元素上执行多个动画 那么对于这个动画来说 只会执行当前的动画
            // 后面的动画都会被放进动画队列,等前面的动画执行完毕后,才会执行后面的动画
            $(function(){
                // 开始动画
                $("#start").click(function(){
                    $(".box").slideDown(2000).slideUp(2000)
                })
                // 停止动画
                $("#stop").click(function(){
                    /* stop()是用来停止动画的 有两个参数
                    参数1 是否清除队列
                    参数2 是否跳转到动画的最终效果
                    
                    如果两个参数都不写 那么默认的两个参数都是false
                    */ 
//                     $(".box").stop(false,true);
//                     $(".box").stop(true,false);
//                     $(".box").stop(true,true);
//                     $(".box").stop(false,false);
                    $(".box").stop();
                })
            })
        </script>

  5.自定义动画

 1 <body>
 2         <input type="button" value="移动到800" id="move800" />
 3         <div id="box"></div>
 4         
 5         <script src="./jquery-1.12.4.js"></script>
 6         <script>
 7             $(function(){
 8                 // 给按钮点击事件 让盒子从0移动到800
 9                 /* 
10                  animate方法有四个参数
11                     参数1 是必填项  为一个对象 里面填的是需要用来做动画的属性
12                     参数2 可选项  动画时长 400
13                     参数3 可选项   运动曲线 匀速 linear  缓动 swing(默认值)
14                     参数4  可选项  动画执行完毕的回调函数
15                  */
16             $("#move800").click(function(){
17                 // 自定义动画
18                 $("#box").animate({
19                     left : 800,
20                     height : 300,
21                     width : 300,
22                     opacity : 0.6
23                 },3000,"linear",function(){
24                     // 第一个动画执行完毕之后
25                     $("#box").animate({
26                         left : 200,
27                         height : 150,
28                         width : 50,
29                         top : 300,
30                         opacity : 1
31                     },2000,function(){
32                         $("#box").animate({
33                             left : 800,
34                             height : 200,
35                             width : 100,
36                             top : 100,
37                             opacity : 1
38                         },2000,)
39                     })
40                 })
41                 })
42             })
43         </script>
原文地址:https://www.cnblogs.com/zycs/p/12901079.html