• jQuery中的动画与效果


    1、基本效果
    隐藏元素
    hide(speed,[callback]);
    显示元素
    show(speed,[callback])
    交替显示隐藏
    toggle(speed,[callback])
    速度对应的有三个常量,为"slow" "nomal" "fast"
    三种速度的值分别为600毫秒、400毫秒和200毫秒
    回调函数每个元素执行一次
    2、滑动效果
    向上收缩(卷起)
    slideUp(speed,[callback]);
    向下展开
    slideDown(speed,[callback]);
    交替伸缩样式
    slideToggle(speed,[callback]);
    3、淡入淡出效果
    淡入效果
    fadeIn(speed,[callback]);
    淡出效果
    fadeOut(speed,[callback]);
    自定义不透明度
    fadeTo(speed,opacity,[callback]);
    上面两种方式要么淡入要么淡出,不能停留在中间的某个状态,自定义不透明度可以实现。
    第一个和第三个参数和上面是一样的,opacity是要调整到的不透明度值(0到1之间的数字)
    如果是0和fadeOut的效果一样,参数调整为1和fadeIn的效果一样。
    调用方式:$("first").fadeTo("slow",0.3);
    页面淡入淡出的透明度范围为0~0.3。
    4、自定义动画效果
    自定义动画animate(params[,duration[,easing[,callback]]])
    prarms一组包含作为动画属性和终值样式属性及其值的集合
    duration (可选)三种预订速度之一的字符串,或者表示动画时长的毫秒数值(如1000)
    easing (可选)要使用的擦除效果的名称(需要插件支持),默认jQuery支持linear和swing
    callback (可选)在动画执行完成时的回调函数

    $("#block").animate({
     "70%",
    height: "100%",
    fontSize: "4em"
    }, 1000 );

    属性值里面的格式和CSS相似,但也有区别如字体的设置,在CSS中是font-size: 4em,而在动画的属性值中是fontSize:"4em" 。
    animate实现的显示和隐藏:

    $("#toggle").click(function(){
    $("#block").animate({
    height: 'toggle', opacity: 'toggle'
    }, 3000); 
    }); 

    代码中height和opacity在有和无之间进行切换,这样就和显示隐藏的效果基本一样。

    animate函数还有另外一种使用方式,它可以只带两个参数
    animate(params,options) 用于创建自定义的动画
    第一个参数和之前的一样,表示一组动画属性值,第二个参数为一组选项设置,用于设置动画速度、
    easing插件样式、是否加入动画队列等,可用的选项如下:
    duration 速度选项
    easing 擦除效果选项
    complete 动画完成时执行的函数
    step callback函数
    queue 是否将此动画进入循环队列
    调用方式为:

    $("#block").animate({
    "70%"
    heigth:"100%",
    fontSize:"4em"
    },{duration:1000}
    );

    5、jQuery动画队列
    对于一个元素可以应用多个动画效果,为便于管理引入了动画队列的概念,

    $("#go1").click(function(){
    $("#block2").animate( {  "70%"}, 1000 )
    .animate( { fontSize: '5em' } , 1000 )
    .animate( { paddingLeft: '20px' }, 1000);
    }); 

    上面是队列动画,queue使用默认值为true,三个动画依次执行,而下面是非队列动画,一次执行三个

    $("#go2").click(function(){
    $("#block1").animate( {  "70%"}, { queue: false, duration: 1000 } )
    .animate( { fontSize: '5em' } , { queue: false, duration: 1000 } )
    .animate( { paddingLeft: '20px' }, { queue: false, duration: 1000 });
    });
    jQuery中的queue()函数
    $("#show").click(function () {
    var n = $("p").queue("fx");
    $("span").text("队列的长度是: " + n.length);
    });
    function runIt() {
    $("p").show("slow");
    $("p").animate({left:'+=200'},2000);
    $("p").slideToggle(1000);
    $("p").slideToggle("fast");
    $("p").animate({left:'-=200'},1500);
    $("p").hide("slow");
    $("p").show(1200);
    $("p").slideUp("normal", runIt);
    }
    runIt();    

    这段代码调用queue("fx")函数取得作用于标签<p>上的动画队列,然后使用length获得其长度
    jQuery还有其他一些比较常用的用法
    queue(callback)
    queue(queue) 传入动画队列作为参数
    dequeue() 用于从动画队列中移除一个队列函数

  • 相关阅读:
    Android 最简单的基于FFmpeg的移动端例子:Android HelloWorld
    实现简易的android 直播技术
    Android Service和Thread的关系
    Android Fragment 你应该知道的一切
    SQLyog普通版与SQLyog企业版对比分析
    Sqoop异常解决ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: No columns to generate for ClassWriter问题
    SQLyog软件里无法插入中文(即由默认的latin1改成UTF8编码格式)
    Sqoop-1.4.6工具import和export使用详解(官网)
    Sqoop Export原理和详细流程讲解
    Sqoop Import原理和详细流程讲解
  • 原文地址:https://www.cnblogs.com/shudonghe/p/2858826.html
Copyright © 2020-2023  润新知