jQuery-动效

jQuery显示与隐藏
  • show([speed,[easing],[fn]])
    • 显示隐藏的匹配元素
    • 内部的实现原理是根据当前操作的元素是块级还是行内决定的
    • 块级内部调用display:block;,行内内部调用display:inline
    • 参数
      • speed 字串符速度slow,normal,fast或表示动画时长的毫秒数值
      • easing用来指定切换效果,默认是swing,可用参数linear
      • fn 在动画完成时执行的回调函数,每个元素执行一次
<script>
  $("button").eq(0).click(function () {
    $("div").show(1000, function () {
        alert("animation over");
    });
  });
</script>
  • hide([speed,[easing],[fn]])
    • 隐藏显示的元素
    • 参数
      • speed 字串符速度slow,normal,fast或表示动画时长的毫秒数值
      • easing用来指定切换效果,默认是swing,可用参数linear
      • fn 在动画完成时执行的回调函数,每个元素执行一次
<script>
$("button").eq(0).click(function () {
    $("div").hide(1000, function () {
        alert("show over");
    });
});
</script>
  • toggle([speed],[easing],[fn])
    • 如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的
    • 参数
      • speed 字串符速度slow,normal,fast或表示动画时长的毫秒数值
      • easing用来指定切换效果,默认是swing,可用参数linear
      • fn 在动画完成时执行的回调函数,每个元素执行一次
<script>
$("button").eq(2).click(function () {
    $("div").toggle(1000, function () {
        alert("Switch over");
    });
});
</script>
jQuery滑动效果
  • slideDown([speed],[easing],[fn])
    • 通过高度变化(向下增大)来动态地显示所有匹配的元素
    • 参数与显示隐藏函数参数一样
<script>
$("button").eq(0).click(function () {
    $("div").slideDown(1000, function () {
        alert("SlideDown");
    });
});
</script>
  • slideUp([speed,[easing],[fn]])
    • 通过高度变化(向下增大)来动态地隐藏所有匹配的元素
    • 参数与显示隐藏函数参数一样
<script>
$("button").eq(1).click(function () {
    $("div").slideUp(1000, function () {
        alert("SlideUp");
    });
});
</script>
  • slideToggle([speed],[easing],[fn])
    • 通过高度变化来切换所有匹配元素的可见性
    • 参数与显示隐藏函数参数一样
<script>
$("button").eq(2).click(function () {
    $("div").slideToggle(1000, function () {
        alert("SlideToggle");
    });
});
</script>
jQuery淡入淡出

参数、注意事项和显示隐藏动画一模一样, 只不过动画效果不一样而已

  • fadeIn([speed],[easing],[fn])
    • 淡入动画
<script>
$("button").eq(0).click(function () {
    $("div").fadeIn(1000, function () {
        alert("Over");
    });
});
</script>
  • fadeOut([speed],[easing],[fn])
    • 淡出动画
<script>
$("button").eq(1).click(function () {
    $("div").fadeOut(1000, function () {
        alert("Over");
    });
});
</script>
  • fadeToggle([speed,[easing],[fn]])
    • 切换动画(显示变淡出,不显示变淡入)
<script>
$("button").eq(2).click(function () {
    $("div").fadeToggle(1000, function () {
        alert("Over");
    });
});
</script>
  • fadeTo([[speed],opacity,[easing],[fn]])
    • 淡入到指定透明度动画
    • 通过第二个参数,淡入到指定的透明度(取值范围0~1)
<script>
$("button").eq(3).click(function () {
    $("div").fadeTo(1000, 0.2, function () {
        alert("Over");
    })
});
</script>
jQuery自定义动画
  • animate(params,[speed],[easing],[fn])
    • 用于创建自定义动画的函数
    • 参数
      • 第一个参数: 接收一个对象, 可以在对象中修改属性
      • 第二个参数: 指定动画时长
      • 第三个参数: 指定动画节奏, 默认就是swing
      • 第四个参数: 动画执行完毕之后的回调函数
<script>
  // 修改属性
  $("button").eq(0).click(function (){
    $(".box1").animate({
        width: 500
        }, 2000, "linear", function () {
        alert("Over");
    });
  });

  // 同时修改多个属性
  // 多个属性动画会同时执行
  $("button").eq(1).click(function (){
    $(".box2").animate({
        width: 200,
        marginLeft:200
        }, 2000, "linear", function () {
        alert("Over");
    });
  });

 // 每次开始运动都必须是初始位置或者初始状态
 // 如果想在上一次位置或者状态下再次进行动画可以使用累加动画
  $("button").eq(2).click(function (){
    $(".box3").animate({
        width: "+=100"
        }, 2000, "linear", function () {
        alert("Over");
    });
   });

  // 初次之外,还可以使用显示隐藏等函数的关键字
  $("button").eq(3).click(function (){
    $(".box4").animate({
        width: "hide"
        // width: "toggle"
        }, 2000, "linear", function () {
        alert("Over");
    });
   });
</script>
  • delay(duration,[queueName])
    • 设置一个延时来推迟执行队列中之后的项目
<script>
  // 表示width执行完后过2s在执行高度动画
  $(".box").animate({
      width: 500
    }, 1000).delay(2000).animate({
      height: 500
    }, 1000);
</script>
  • stop([clearQueue],[jumpToEnd])
    • 停止所有在指定元素上正在运行的动画
<script>
 $("button").eq(1).click(function () {
    // 立即停止当前动画, 继续执行后续的动画
    // $("div").stop();
    // $("div").stop(false);
    // $("div").stop(false, false);

    // 立即停止当前和后续所有的动画
    // $("div").stop(true);
    // $("div").stop(true, false);

    // 立即完成当前的, 继续执行后续动画
    // $("div").stop(false, true);

    // 立即完成当前的, 并且停止后续所有的
    $("div").stop(true, true);
 });
</script>
  • finish( [queue ] )
    • 停止当前正在运行的动画,删除所有排队的动画,并完成匹配元素所有的动画
    • .finish()在一个元素上被调用,立即停止当前正在运行的动画和所有排队的动画(如果有的话),并且他们的CSS属性设置为它们的目标值(所有动画的目标值)。所有排队的动画将被删除
<script>
  $("button").eq(0).click(function () {
      $(".one").animate({
      height: 500
      }, 2000);

      $(".one").animate({
      width: 500
      }, 1000);
  });

  // 停止所有动画,并将CSS设置为其最终值
  $("button").eq(1).click(function () {
        $(".one").finish();
  });
</script>
jQuery动画设置
<script>
 // 关闭页面上所有的动画
 jQuery.fx.off = true;

 // 设置动画的显示帧速(ms)
 jQuery.fx.interval = 100;
</script>
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,222评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,455评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,720评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,568评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,696评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,879评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,028评论 3 409
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,773评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,220评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,550评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,697评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,360评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,002评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,782评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,010评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,433评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,587评论 2 350

推荐阅读更多精彩内容

  • JQ操作DOM属性节点相关方法(包含类的操作) 属性节点就是指dom元素的属性 一般如果是标签自身自带的属性,我们...
    Lins7阅读 434评论 0 0
  • 题目1: jQuery 能做什么? 选择网页元素改变结果集元素的操作:取值和赋值元素的操作:移动元素的操作:复制、...
    QQQQQCY阅读 185评论 0 1
  • jQuery jQuery就是JS的一个扩展库,工具库,提供很多方便快捷的方法,所以将JS对象转换为jQuery对...
    YQY_苑阅读 232评论 0 1
  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 1,330评论 0 2
  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 1,167评论 0 1