<button name="width">改变宽</button>
    <button name="height">改变高</button>
    <button name="all">改变宽高</button>
    <div></div>
    <script src="./jquery.min.js"></script>
    <script>
        // 之前的动画效果,都是隐藏和出现的效果
        // 可以通过自定义动画,定义需要改变的属性和属性值,到达动画效果
        // 语法:
        // $().animate( {动画属性和属性值} , 动画时间 , 动画方式 , 动画结束回调函数 )
        // 有一些属性,动画效果是不支持的
        // 颜色 和 display
        // 颜色可以使用过渡来实现
        // display 可以先用透明度,逐渐消失,当运动结束时,直接设定属性为 none 或者 block
        $('[name="width"]').click(()=>{
            $('div').animate({width:500} , 2000 , 'linear' , ()=>{
                console.log('动画结束了')
            })
        }) 
        $('[name="height"]').click(()=>{
            $('div').animate({height:500} , 2000 , 'linear' , ()=>{
                console.log('动画结束了')
            })
        }) 
        $('[name="all"]').click(()=>{
            $('div').animate({height:'500px',width:500, opacity: 0} , 2000 , 'linear' , ()=>{
                console.log('动画结束了');
                // 当动画结束,设定样式为 none
                $('div').css({display:'none'});
            })
        }) 
 
 <button name="toggle">折叠切换</button>
    <div></div>
    <script src="./jquery.min.js"></script>
    <script>
        // jQuery的动画,如果点击过快,不会造成动画执行混乱
        // 会逐一将所有点击触发的动画,完全都执行完毕
        // 执行完上一个动画,再执行下一个动画,直到所有动画都执行完毕
        // stop()   立即终止上一个动画的执行,从当前运动位置,开始下一次动画
        // finish() 立即终止上一个动画的执行,从上一个运动终止位置,开始下一次动画
        $('[name="toggle"]').click(()=>{
            // 上一次动画没有执行结束,就触发了下一次动画
            // 会立即终止上次动画的执行,从当前位置开始,执行下一次动画
            // $('div').stop().slideToggle( 2000 , 'linear' , ()=>{
            //     console.log('动画结束了');
            // })
            // 上一次动画没有执行结束,就触发了下一次动画
            // 会立即终止上次动画的执行,从上一次动画应有的结束位置开始,执行下一次动画
            $('div').finish().slideToggle( 2000 , 'linear' , ()=>{
                console.log('动画结束了');
            })
        })
        // 总结: 触发下一次动画,上一次没有执行完的动画,怎么处理
        // 1, finish   stop  都要写在 运动函数之前
        //    表示终止的是 之后的 动画的响应的执行
        // 2, finish   stop  终止的是上一次动画的执行
        // 3, finish  上一次动画的终止位置开始,执行下一次动画
        //    stop    从当前位置开始,执行下一次动画 

自定义动画 jquery的结束动画的更多相关文章

  1. 自定义jQuery的animate动画

    //擦除效果 jQuery.extend(jQuery.easing, { easeOutBack : function(x, t, b, c, d, s) { s = s || 1.3; retur ...

  2. bootstrap课程7 jquery中结束之前动画用什么

    bootstrap课程7 jquery中结束之前动画用什么 一.总结 一句话总结:stop()方法.$('.navs').not($('.navs').eq(idx)).stop().hide(100 ...

  3. jQuery---jQ动画(普通,滑动,淡入淡出,自定义动画,停止动画),jQuery的事件,jQ事件的绑定/解绑,一次性事件,事件委托,事件冒泡,文档加载

    jQuery---jQ动画(普通,滑动,淡入淡出,自定义动画,停止动画),jQuery的事件,jQ事件的绑定/解绑,一次性事件,事件委托,事件冒泡,文档加载 一丶jQuery动画 show,hide, ...

  4. jquery的animate({})动画整理

    在网页制作的过程中少不了用到各种动画,形式多种多样,flash,css,js,canvas,等等都能实现,对于其优劣和效果只能说各有千秋. 什么是动画效果,其实网页中的渐变效果就是一种很基础的动画,动 ...

  5. jQuery的效果(动画)

    jquery的效果(动画) show 概念:显示隐藏的匹配元素 语法:show(speed,callback) 参数:speed:三种预定速度之一的字符串('slow','normal','fast' ...

  6. 【学习笔记】jQuery中的动画与效果

    1.基本效果 匹配元素从左上角开始变浓变大或缩小到左上角变淡变小 ①隐藏元素 除了可以设置匹配元素的display:none外,可以用以下函数 hide(speed,[callback])  返回值: ...

  7. jQuery中的动画与效果

    1.基本效果 匹配元素从左上角开始变浓变大或缩小到左上角变淡变小 ①隐藏元素 除了可以设置匹配元素的display:none外,可以用以下函数 hide(speed,[callback])  返回值: ...

  8. jQuery中的动画——《锋利的JQuery》

    自CSS3以来,主流网站开始偏向于扁平风格和动画效果,这时就可以jQuery的动画就可以发挥其长处了,灵活的应用其动画API,让我们可以设计出很多绚丽的效果.下面,让我们来列举一些jQuery常用的动 ...

  9. 4.2 《锋利的jQuery》jQuery中的动画

    问题:queue()方法? tip0: jquery从1.9版本以上就不支持toggle()方法. // $("#panel h5.head").toggle(function() ...

  10. 史上最全的CSS hack方式一览 jQuery 图片轮播的代码分离 JQuery中的动画 C#中Trim()、TrimStart()、TrimEnd()的用法 marquee 标签的使用详情 js鼠标事件 js添加遮罩层 页面上通过地址栏传值时出现乱码的两种解决方法 ref和out的区别在c#中 总结

    史上最全的CSS hack方式一览 2013年09月28日 15:57:08 阅读数:175473 做前端多年,虽然不是经常需要hack,但是我们经常会遇到各浏览器表现不一致的情况.基于此,某些情况我 ...

随机推荐

  1. 《C# in depth》第5章C#5.0中的更改(十三)——異步枚舉器

    一.異步枚舉 异步枚举器(Async Enumerator)是指一种异步迭代器,可以用于处理异步数据源.它允许我们以异步的方式逐个读取数据源中的元素. 在传统的同步枚举器中,当我们遍历一个集合时,程序 ...

  2. 力扣349(java&python)-两个数组的交集(简单)

    题目: 给定两个数组 nums1 和 nums2 ,返回 它们的交集 .输出结果中的每个元素一定是 唯一 的.我们可以 不考虑输出结果的顺序 . 示例 1: 输入:nums1 = [1,2,2,1], ...

  3. 2022飞天技术峰会:硬之城如何基于 SAE 打造数智化电子工业互联网平台

    简介: 全球数字化时代已经到来,数字经济正推动生产方式.生活方式和治理方式的深刻变化,成为重组全球要素资源,重塑经济结构,改变全球竞争格局的关键力量. 本文根据硬之城 CEO 李六七先生在峰会上的分享 ...

  4. 5G新基建 边缘计算乘风破浪

    作者 | 张羽辰(同昭)阿里云交付专家 导读:如今,几乎所有的事情都离不开软件,当你开车时,脚踩上油门,实际上是车载计算机通过力度感应等计算输出功率,最终来控制油门,你从未想过这会是某个工程师的代码. ...

  5. 如何 0 改造,让单体/微服务应用成为 Serverless Application

    简介: 随着 2013 年以 Docker 为代表的容器技术.CNCF 基金会以及 K8s 的发展等,云原生开始被广大开发者所熟知.云原生时代之前还有两个阶段:一是自建 IDC 机房,二是简单地把原有 ...

  6. Cube 技术解读 | 详解「支付宝」全新的卡片技术栈

    ​简介: 魔方卡片(Cube),让 App 首页实现敏捷更新. ​ CodeHub#7 正式落幕,来自蚂蚁集团的技术专家「京君」与掘金社区的开发者们分享了「支付宝」全新的卡片技术栈--魔方卡片(Cub ...

  7. [FAQ] golang-migrate/migrate error: default addr for network '127.0.0.1:3306' unknown

    按照项目github文档上所示,在使用 mysql 时你可能会这样写: $ migrate -path db/migrations -database mysql://root:123456@127. ...

  8. WPF 已知问题 传入错误数据给到 WriteableBitmap 可能导致渲染线程锁住

    本文记录一个 WPF 已知问题,此问题已经被我修复.传入错误的数据给到 WriteableBitmap 对象,比如调用 WritePixels 时传入错误的 stride 数值,将可能导致渲染线程进入 ...

  9. 剪贴板被占用导致应用使用剪贴板拷贝内容失败抛出 COMException 0x800401D0 错误

    本文记录某些软件,例如 向日葵远程控制 软件占用剪贴板,导致 WPF 应用使用剪贴板拷贝内容和设置剪贴板时,抛出 System.Runtime.InteropServices.COMException ...

  10. 火山引擎ByteHouse:OLAP如何支持超高QPS点查?

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在当今高速发展的互联网时代,信息传播迅速,用户数量激增.在面对如此庞大的用户群体和高频的访问需求时,系统高并发访问 ...