• JQuery动画详解(四)


    一:基本动画
    show()
    显示隐藏的匹配元素。
    这个就是 'show( speed, [callback] )' 无动画的版本。如果选择的元素是可见的,这个方法将不会改变任何东西。无论这个元素是通过hide()方法隐藏的还是在CSS里设置了display:none;,这个方法都将有效。
    返回值
    jQuery
    示例
    显示所有段落
    HTML 代码:
    <p style="display: none">Hello</p>
    jQuery 代码:
    $("p").show()

         show(speed,[callback])
    以优雅的动画显示所有匹配的元素,并在显示完成后可选地触发一个回调函数。
    可以根据指定的速度动态地改变每个匹配元素的高度、宽度和不透明度。
    返回值
    jQuery
    参数
    speed (String,Number) : 三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)
    callback (Function) : (Optional) 在动画完成时执行的函数,每个元素执行一次。
    示例
    用缓慢的动画将隐藏的段落显示出来,历时600毫秒。
    HTML 代码:
    <p style="display: none">Hello</p>
    jQuery 代码:
    $("p").show("slow");

    用迅速的动画将隐藏的段落显示出来,历时200毫秒。并在之后执行反馈!
    HTML 代码:
    <p style="display: none">Hello</p>
    jQuery 代码:
    $("p").show("fast",function(){
       $(this).text("Animation Done!");
     });
    将隐藏的段落用将近4秒的时间显示出来。。。并在之后执行一个反馈。。。
    HTML 代码:
    <p style="display: none">Hello</p>
    jQuery 代码:
    $("p").show(4000,function(){
      $(this).text("Animation Done...");
     });

    hide()
    隐藏显示的元素
    这个就是 'hide( speed, [callback] )' 的无动画版。如果选择的元素是隐藏的,这个方法将不会改变任何东西。
    返回值
    jQuery
    示例
    隐藏所有段落
    jQuery 代码:
    $("p").hide()

    hide(speed,[callback])
    以优雅的动画隐藏所有匹配的元素,并在显示完成后可选地触发一个回调函数。
    可以根据指定的速度动态地改变每个匹配元素的高度、宽度和不透明度。
    返回值
    jQuery
    参数
    speed (String,Number) :三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)
    callback (FunctionFunction) : (Optional) 在动画完成时执行的函数,每个元素执行一次。

    示例
    用600毫秒的时间将段落缓慢的隐藏
    jQuery 代码:
    $("p").hide("slow");
    用200毫秒将段落迅速隐藏,之后弹出一个对话框。
    jQuery 代码:
    $("p").hide("fast",function(){    alert("Animation Done.");  });

    toggle()
    切换元素的可见状态。
    如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的。
    返回值
    jQuery
    示例
    切换所有段落的可见状态。
    HTML 代码:
    <p>Hello</p><p style="display: none">Hello Again</p>
    jQuery 代码:
    $("p").toggle()
    结果:
    <p tyle="display: none">Hello</p><p style="display: block">Hello Again</p>
    代码:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>详解jQuery动画</title>
    <style type="text/css">
    p
    {
    	200px;
    	height:200px;
    	background-color:Red;	
    	border-style:solid
    }
    </style>
     <!--   引入jQuery -->
        <script src="../scripts/jquery-1.2.6.js" type="text/javascript"></script>
        <script src="../scripts/jquery-1.2.6-vsdoc-cn.js" type="text/javascript"></script>
        
     <script type="text/javascript">
         $(document).ready(function() {
                     $("#btn1").toggle(function() {
    
                         $("p").show(2000, function() {
                             $("#btn1").val("hide");
                         });
                     },
                     function() {
                         $("p").hide(2000, function() {
                             $("#btn1").val("show");
                         })
                     }
                     );
    
             $("#btn1").click(function() {
                 $("p").toggle(2000);
             });
    
             $("#btn2").click(function() {
                 $("p").slideDown(2000, function() { alert("ok"); });
             });
    
             $("#btn3").click(function() {
                 $("p").slideUp(2000, function() { alert("ok"); });
             });
    
             $("#btn4").click(function() {
                 $("p").slideToggle(2000, function() { alert("ok"); });
             });
             $("#btn5").click(function() {
                 $("p").fadeIn(2000, function() { alert("ok"); });
             });
             $("#btn6").click(function() {
                 $("p").fadeOut("slow", function() { alert("ok"); });
             });
             $("#btn7").click(function() {
                 $("p").fadeTo("slow",0.66, function() { alert("ok"); });
             });
    
             $("#btn8").click(function() {
                $("p").animate({ 
                  "90%",
                 height: "100%",
                 fontSize: "10em",
                  borderWidth: 10
                  }, 1000 );
                }); 
    
           
         })
         
    
      </script>
    </head>
    <body >
    <p style="display:none">Hellow!</p>
    <input type="button" id="btn1" value="Show" />
    <input type="button" id="btn2" value="SolidDown" />
    <input type="button" id="btn3" value="SolidUp" />
    <input type="button" id="btn4" value="SolidToggle" />
    <input type="button" id="btn5" value="fadeIn" />
    <input type="button" id="btn6" value="fadeOut" />
    <input type="button" id="btn7" value="fadeTo" />
    <input type="button" id="btn8" value="Animate" />
    </body>
    </html>
    
     
    

    二: jQuery中的滑动
    slideDown(speed,[callback])
    通过高度变化(向下增大)来动态地显示所有匹配的元素,在显示完成后可选地触发一个回调函数。
    这个动画效果只调整元素的高度,可以使匹配的元素以“滑动”的方式显示出来。
    返回值
    jQuery
    参数
    speed (String,Number) :三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)
    callback (FunctionFunction) : (可选) 在动画完成时执行的函数

    示例
    用600毫秒缓慢的将段落滑下
    jQuery 代码:
    $("p").slideDown("slow");
    用200毫秒快速将段落滑下,之后弹出一个对话框
    <p style="display: none;200px;height:200px;">Hello</p>
    jQuery 代码:
    $("p").slideDown("fast",function(){
      alert("Animation Done.");
     });

    slideUp(speed,[callback])
    通过高度变化(向上减小)来动态地隐藏所有匹配的元素,在隐藏完成后可选地触发一个回调函数。
    这个动画效果只调整元素的高度,可以使匹配的元素以“滑动”的方式隐藏起来。
    返回值
    jQuery
    参数
    speed (String,Number) : 三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)
    callback (Function) : (可选) 在动画完成时执行的函数


    示例
    用600毫秒缓慢的将段落滑上
    jQuery 代码:
    $("p").slideUp("slow");
    用200毫秒快速将段落滑上,之后弹出一个对话框
    jQuery 代码:
    $("p").slideUp("fast",function(){
       alert("Animation Done.");
     });


    slideToggle(speed,[callback])
    通过高度变化来切换所有匹配元素的可见性,并在切换完成后可选地触发一个回调函数。
    这个动画效果只调整元素的高度,可以使匹配的元素以“滑动”的方式隐藏或显示。
    返回值
    jQuery
    参数
    speed (String,Number) : 三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)
    callback (Function) : (可选) 在动画完成时执行的函数
    示例
    用600毫秒缓慢的将段落滑上或滑下
    jQuery 代码:
    $("p").slideToggle("slow");
    用200毫秒快速将段落滑上或滑下,之后弹出一个对话框
    jQuery 代码:
    $("p").slideToggle("fast",function(){
      alert("Animation Done.");
    });


    三:jQuery中淡入淡出效果

    fadeIn(speed,[callback])
    通过不透明度的变化来实现所有匹配元素的淡入效果,并在动画完成后可选地触发一个回调函数。
    这个动画只调整元素的不透明度,也就是说所有匹配的元素的高度和宽度不会发生变化。
    返回值
    jQuery
    参数
    speed (String,Number) : 三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)
    callback (Function) : (Optional) (可选) 在动画完成时执行的函数
     
    示例
    用600毫秒缓慢的将段落淡入
    jQuery 代码:
    $("p").fadeIn("slow");
    用200毫秒快速将段落淡入,之后弹出一个对话框
    jQuery 代码:
    $("p").fadeIn("fast",function(){
      alert("Animation Done.");
     });
     
    fadeOut(speed,[callback])
    通过不透明度的变化来实现所有匹配元素的淡出效果,并在动画完成后可选地触发一个回调函数。
    这个动画只调整元素的不透明度,也就是说所有匹配的元素的高度和宽度不会发生变化。
    返回值
    jQuery
    参数
    speed (String,Number) :三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)

    callback (Function) :(可选) 在动画完成时执行的函数
    示例
    用600毫秒缓慢的将段落淡出
    jQuery 代码:
    $("p").fadeOut("slow");
    用200毫秒快速将段落淡出,之后弹出一个对话框
    jQuery 代码:
    $("p").fadeOut("fast",function(){
       alert("Animation Done.");
     });


    fadeTo(speed,opacity,[callback])
    把所有匹配元素的不透明度以渐进方式调整到指定的不透明度,并在动画完成后可选地触发一个回调函数。
    这个动画只调整元素的不透明度,也就是说所有匹配的元素的高度和宽度不会发生变化。
    返回值
    jQuery
    参数
    speed (String,Number) : 三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)
    opacity (Number) : 要调整到的不透明度值(0到1之间的数字).
    callback (Function) : (可选) 在动画完成时执行的函数


    示例
    用600毫秒缓慢的将段落的透明度调整到0.66,大约2/3的可见度
    jQuery 代码:
    $("p").fadeTo("slow", 0.66);
    用200毫秒快速将段落的透明度调整到0.25,大约1/4的可见度,之后弹出一个对话框
    jQuery 代码:
    $("p").fadeTo("fast", 0.25, function(){
       alert("Animation Done.");
    });

    代码:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>详解jQuery动画</title>
    <style type="text/css">
    p
    {
    	200px;
    	height:200px;
    	background-color:Red;	
    	border-style:solid
    }
    </style>
     <!--   引入jQuery -->
        <script src="../scripts/jquery-1.2.6.js" type="text/javascript"></script>
        <script src="../scripts/jquery-1.2.6-vsdoc-cn.js" type="text/javascript"></script>
        
     <script type="text/javascript">
         $(document).ready(function() {
    
             $("#btn1").click(function() {
                 $("p").animate({ left: '+200px' }, "slow");
    
             })
    
             $("#btn2").click(function() {
                 $("p").animate({ left: '-200px' }, "slow");
    
             })
    
             $("#btn3").click(function() {
                 
                 $("p").animate({ height: 'toggle', opacity: 'toggle' }, "slow");
             })
    
            $("#btn4").click(function() {
    
                $("#p2").animate({ left: 200, opacity: 'show' }, { duration: 500 });
             })
         })
         
    
      </script>
    </head>
    <body >
    <p id="p1" style="display: block;left:20px;top:40px;position:absolute;200px;height:200px;background-color:Red;border-style:solid;border-1px;border-color:Black;">Hello</p> 
    <p id="p2" style="display: none;left:20px;top:40px;position:absolute;200px;height:200px;background-color:Red;border-style:solid;border-1px;border-color:Black;">Hello</p> 
    
    <input type="button" id="btn1" value="Right" />
    <input type="button" id="btn2" value="Left" />
    
    <input type="button" id="btn3" value="Toggle" />
    <input type="button" id="btn4" value="Show" />
    </body>
    </html>
    
     
    
     
    四:jQuery中的自定义动画
    animate(params[,duration[,easing[,callback]]])
    用于创建自定义动画的函数。
    这个函数的关键在于指定动画形式及结果样式属性对象。这个对象中每个属性都表示一个可以变化的样式属性(如“height”、“top”或“opacity”)。 注意:所有指定的属性必须用骆驼形式,比如用marginLeft代替margin-left.
    而每个属性的值表示这个样式属性到多少时动画结束。如果是一个数值,样式属性就会从当前的值渐变到指定的值。如果使用的是“hide”、“show”或“toggle”这样的字符串值,则会为该属性调用默认的动画形式。
    在 jQuery 1.2 中,你可以使用 em 和 % 单位。另外,在 jQuery 1.2 中,你可以通过在属性值前面指定 "+=" 或 "-=" 来让元素做相对运动。
    返回值
    jQuery
    参数
    params (Options) : 一组包含作为动画属性和终值的样式属性和及其值的集合
    duration (String,Number) : (可选) 三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)
    callback (Function) : (可选) 在动画完成时执行的函数

    示例1
    点击按钮后div元素的几个不同属性一同变化
    HTML 代码:
    <button id="go"> Run</button>
    <div id="block">Hello!</div>
    jQuery 代码:
    // 在一个动画中同时应用三种类型的效果
    $("#go").click(function(){
      $("#block").animate({
        "90%",
        height: "100%",
        fontSize: "10em",
       borderWidth: 10
     }, 1000 );
    });

     
    让指定元素左右移动
    HTML 代码:
    <p style="display: none;left:20px;top:20px;position:absolute;200px;height:200px;border-style:solid;border-1px;border-color:Black;">Hello</p>
    jQuery 代码:
    $("#right").click(function(){
      $(“p").animate({left: '+50px'}, "slow");
    });
    $("#left").click(function(){
      $(“p").animate({left: '-50px'}, "slow");
    });

     
    animate(params,options)
    用于创建自定义动画的函数。
    这个函数的关键在于指定动画形式及结果样式属性对象。这个对象中每个属性都表示一个可以变化的样式属性(如“height”、“top”或“opacity”)。 注意:所有指定的属性必须用骆驼形式,比如用marginLeft代替margin-left.
    而每个属性的值表示这个样式属性到多少时动画结束。如果是一个数值,样式属性就会从当前的值渐变到指定的值。如果使用的是“hide”、“show”或“toggle”这样的字符串值,则会为该属性调用默认的动画形式。
    在 jQuery 1.2 中,你可以使用 em 和 % 单位。另外,在 jQuery 1.2 中,你可以通过在属性值前面指定 "+=" 或 "-=" 来让元素做相对运动。
    返回值
    jQuery
    参数
    params (Options) : 一组包含作为动画属性和终值的样式属性和及其值的集合
    options (Options) : 一组包含动画选项的值的集合。


    选项
    duration (String,Number) : (默认值: "normal") 三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)

    complete (Function) : 在动画完成时执行的函数
    step (Callback) :
    queue (Boolean) : (默认值: true) 设定为false将使此动画不进入动画队列 (jQuery 1.2中新增)



    示例
    第一个按钮按了之后展示了不在队列中的动画。在div扩展到90%的同时也在增加字体,一旦字体改变完毕后,边框的动画才开始。
    第二个按钮按了之后就是一个传统的链式动画,即等前一个动画完成后,后一个动画才会开始.
    HTML 代码:
    <button id="go1"> Animate Block1</button>
    <button id="go2"> Animate Block2</button>
    <div id="block1">Block1</div><div id="block2">Block2</div>
    jQuery 代码:
    $("#go1").click(function(){
      $("#block1").animate( { "90%"}, { queue: false, duration: 5000 } )
         .animate( { fontSize: '10em' } , 1000 )
         .animate( { borderWidth: 5 }, 1000);});
    $("#go2").click(function(){
      $("#block2").animate( { "90%"}, 1000 )
        .animate( { fontSize: '10em' } , 1000 )
        .animate( { borderWidth: 5 }, 1000);
    });

     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>详解jQuery动画</title>
    <style type="text/css">
    p
    {
    	200px;
    	height:200px;
    	background-color:Red;	
    	border-style:solid
    }
    </style>
     <!--   引入jQuery -->
        <script src="../scripts/jquery-1.2.6.js" type="text/javascript"></script>
        <script src="../scripts/jquery-1.2.6-vsdoc-cn.js" type="text/javascript"></script>
        
     <script type="text/javascript">
         $(document).ready(function() {
    
         $("#go1").click(function() { $("#block1").animate({  "90%" }, { queue: false, duration: 5000 }).animate({ fontSize: '10em' }, 1000).animate({ borderWidth: 5 }, 1000); });
          $("#go2").click(function() { $("#block2").animate({  "90%" }, 1000).animate({ fontSize: '10em' }, 1000).animate({ borderWidth: 5 }, 1000); }); 
    
    
         })
         
    
      </script>
    </head>
    <body >
    <button id="go1">» Animate Block1</button>
    <button id="go2">» Animate Block2</button>
    <div id="block1">Block1</div>
    <div id="block2">Block2</div> 
    
    </body>
    </html>
    
     
    
  • 相关阅读:
    delphi 获取图片某一像素的颜色值
    delphi常用快捷键(我自己经常使用的)
    115.css的initial、inherit、unset
    菜鸡前端的配色记录-echart比较好看的配色
    114.关于前端的vertical-align详解
    Problem
    Oracle从入门到入门的学习历程
    使用navicat连接oracleXE
    使用ElementUI遭遇问题记录
    SonarQube遇见的问题
  • 原文地址:https://www.cnblogs.com/sunliyuan/p/5877033.html
Copyright © 2020-2023  润新知