animate

Animate.css动画库,简单的使用,以及源码剖析

假装没事ソ 提交于 2020-04-27 19:27:25
项目演练地址 推荐的在线文档社区-MDN css在线手册包含css3 animate.css是什么?能做些什么? animate.css是一个css动画库,使用它可以很方便的快捷的实现,我们想要的动画效果,而省去了操作js的麻烦。同时呢,它也是一个开源的库,在GitHub的点赞高达5万以上。功能非常强大。性能也足够出色。 如何使用它? 首先你需要到github上下载它, 地址 拿到它之后,把animate.css引入到你的html文件。 参考官方的文档(当然了,是英文的哈哈哈,程序员不会英语可万万不行的哦。)就可以十分方便的使用它了。 注意哈,内联元素比如a标签有些动画是不支持的。目前该库正在一点一点的更新中。 例子 (一)静态的使用它 <!-- animated是必须添加的;bounce是动画效果;infinite从语义来看也秒懂,无限循环,不添加infinite默认播放一次 --> 使用的基本公式就是: <div class="animated 想要的动画名称 循环的次数 延迟的时间 持续的时间">动画</div> <div class="animated bounce infinite delay-2s duration-2s ">动画</div> (二)动态的使用它 // 主要的思路就是:给动画对象添加类,然后监听动画结束事件,一旦监听到动画结束,立即移除前面添加的类。--

svg SMIL Animation动画

北城以北 提交于 2020-04-27 18:51:45
svg path路径绘制:贝塞尔曲线 二次贝塞尔曲线: 三次贝塞尔曲线: 基本参数: 指令字母(绝对坐标) 中文含义 参数示意 具体说明 M 移动到 (moveTo) x,y 路径起始点坐标 Z 闭合路径 (closepath) 将路径的开始和结束点用直线连接 L 直线 (lineTo) x,y 当前节点到指定 (x,y) 节点,直线连接 H 水平直线 x 保持当前点的 y 坐标不变, x 轴移动到 x, 形成水平线 V 垂直直线 y 保持当前点的 x 坐标不变, y 轴移动到 y, 形成垂直线 命令 名称 参数 M moveto 移动到 (x y)+ Z closepath 关闭路径 (none) L lineto 画线到 (x y)+ H horizontal lineto 水平线到 x+ V vertical lineto 垂直线到 y+ C curveto 三次贝塞尔曲线到 (x1 y1 x2 y2 x y)+ S smooth curveto 光滑三次贝塞尔曲线到 (x2 y2 x y)+ Q quadratic Bézier curveto 二次贝塞尔曲线到 (x1 y1 x y)+ T smooth quadratic Bézier curveto 光滑二次贝塞尔曲线到 (x y)+ A elliptical arc 椭圆弧 (rx ry x-axis

jQuery的事件,动画效果等

眉间皱痕 提交于 2020-04-25 06:17:56
一.事件   click(function(){})      点击事件   hover(function(){})      悬浮事件,这是jQuery封装的,js没有不能绑定事件   focus(function(){})      聚焦事件,多用于input   blur(function(){})       离开聚集事件,与聚焦事件相反   change(function(){})     内容改变时触发,多用于input,select   keyup(function(e){})      $(window)对象获取,键盘抬起时触发,形参为e, e.keyCode可以回去键的码值   keydown(function(e){})    键盘按下时触发   mouseover(function(e){})   鼠标移上去时触发   mouseenter(function(e){})   鼠标进入标签时触发   input(function(e){})      实时监听input输入值变化,只能绑定事件才能触发 二.绑定事件    $("#id").on("事件",function(){})      三.阻止后续事件执行   return false;    可以阻止后续时间执行,打断事件执行   e.stopPropagation()    e.是函数的形参传入的 四

android6.0 SystemUi分析

微笑、不失礼 提交于 2020-04-24 03:10:35
android6.0 SystemUi分析 http://www.jianshu.com/p/28f1954812b3 前言 状态栏与导航栏属于SystemUi的管理范畴,虽然界面的UI会受到SystemUi的影响,但是,APP并没有直接绘制SystemUI的权限与必要。APP端之所以能够更改状态栏的颜色、导航栏的颜色,其实还是操作自己的View更改UI。可以这么理解:状态栏与导航栏拥有自己独立的窗口,而且这两个窗口的优先级较高,会悬浮在所有窗口之上,可以把系统自身的状态栏与导航栏看做全透明的,之所以会有背景颜色,是因为下层显示界面在被覆盖的区域添加了颜色,之后,通过SurfaceFlinger的图层混合,好像是状态栏、导航栏自身有了背景色。看一下一个普通的Activity展示的时候,所对应的Surface(或者说Window也可以)。如下Surface图: 第一个XXXXActivity,大小是屏幕大小 第二个状态栏StatusBar,大小对应顶部那一条 第三个是底部虚拟导航栏NavigationBar,大小对应底部那一条 HWC_FRAMEBUFFER_TARGET:是合成的目标Layer,不参与合成 从上表可以看出,虽然只展示了一个Activity,但是同时会有StatusBar、NavigationBar

图片点击全屏预览+缩放(Swift 5.0)

房东的猫 提交于 2020-04-24 02:23:10
图片点击全屏预览+缩放(Swift 5.0),直接上代码: import UIKit class ViewController: UIViewController ,UIScrollViewDelegate { var scrollView:UIScrollView? var lastImageView:UIImageView? var originalFrame:CGRect! var isDoubleTap:ObjCBool! //使用sb拖控件显示图片 @IBOutlet weak var myImageView: UIImageView! override func viewDidLoad() { super.viewDidLoad() myImageView.isUserInteractionEnabled = true let tap = UITapGestureRecognizer.init(target: self, action: #selector(showZoomImageView(tap:))) self.myImageView.addGestureRecognizer(tap) } @objc func showZoomImageView( tap : UITapGestureRecognizer) { let bgView = UIScrollView

Jquery动画效果

拈花ヽ惹草 提交于 2020-04-23 14:27:03
根据 jquery官网api文档编写 https://www.jq22.com/chm/jquery/index.html 一、基本效果 关于以下属性中的 easing 想要更好的去了解这个属性 https://www.runoob.com/jqueryui/api-easings.html 我想这里会更加清晰明了 1. show() 显示隐藏的匹配元素。语法:show([speed,[easing],[fn]]) speed:三种预定速度之一的字符串("slow","normal", or "fast")或表示动画时长的毫秒数值(如:1000) fn:在动画完成时执行的函数,每个元素执行一次 (回调函数)。 2. hide() 显示隐藏的匹配元素。语法:hide([speed,[easing],[fn]]) speed:三种预定速度之一的字符串("slow","normal", or "fast")或表示动画时长的毫秒数值(如:1000) fn:在动画完成时执行的函数,每个元素执行一次 (回调函数)。 3. toggle() 1.9版本 .toggle() 方法删除,它很实用,如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的。 二、滑动效果( 与show,hide相似,不同点是动画效果不同以下几点都是 ) 1. slideDown() 通过高度变化(向下增大

Flutter 动画学习

半世苍凉 提交于 2020-04-18 11:27:41
文章目录 概念理解 插值器/估值器 Flutter中的动画类型 动画 Animation Tween (估值器 给出范围的值) Tween 子类 AnimatedWidget 对于没有附加状态的简单情况,可以考虑使用 AnimatedWidget 的子类 AnimatedBuilder 对于涉及其他状态的更复杂的情况,请考虑使用 AnimationStatus Listenable AnimationController CurvedAnimation(插值器 范围内值的变化快慢) TweenSequence Animatable.animate 和 Animatable.chain SingleTickerProviderStateMixin 动画流程 其他 参考文章 概念理解 插值器/估值器 为了使得动画呈现出丰富的动画效果,就需要使用非线性动画,插值器与估值器可以解决这个问题。概念如下所示: 插值器:设置属性值从初始值过渡到结束值的变化规律,如匀速、加速及减速等等。即确定了动画效果变化的模式,如匀速变化、加速变化等等。主要应用于实现非线性运动的动画效果。 估值器:设置属性值从初始值过渡到结束值的变化具体数值。估值器的作用是协助插值器实现非线性运动的动画效果。插值器决定值的变化规律(匀速、加速),即决定的是变化趋势,而接下来的具体变化数值则交给估值器。如:动画进行了50%

移动端App uni-app + mui 开发记录

余生长醉 提交于 2020-04-18 07:26:22
  前言   1、uni-app   uni-app是DCloud推出的终极跨平台解决方案,是一个使用Vue.js开发所有前端应用的框架,官网: https://uniapp.dcloud.io/   2、mui   号称最接近原生APP体验的高性能前端框架,官网: https://dev.dcloud.net.cn/mui/   个人觉得,mui除了页面设计很接近原生App之外,还有一个特点就是能方便的使用App扩展规范Html5 Plus( http://www.html5plus.org/doc/h5p.html ),我们能在它的源码中看到比较多的地方都有使用到   3、开发工具   使用HBuilderX开发工具写uni-app的代码,以及打包App等工作,主要的业务功能依旧是使用我们熟悉的idea开发,不过页面从webPC端风格改成了移动端风格    4、整体架构   我们采用uni-app + mui的方式,使用的是官方推荐的 uni-app原生标题栏跟导航栏 + 嵌入webview远程服务的页面 ,也就是说除了头部、尾部,中间的内容都是类似iframe嵌入进去    简单的说,uni-app,包括头部标题栏、底部导航栏作为App的“壳”,java后端+mui前端页面作为App的“内容”,这样选型的目的是为了方便后期的运维、升级   webview嵌入

WPF使用Animation仿WeChat(微信)播放语音消息

家住魔仙堡 提交于 2020-04-11 19:59:28
效果图预览 新建MyCustomControl类。 public class MyCustomControl : Control { private static Storyboard MyStory; private ObjectAnimationUsingKeyFrames MyAnimation; private List<BitmapImage> ImageList; private UIElement animation; public static readonly DependencyProperty DurationProperty = DependencyProperty.Register( " Duration " , typeof (TimeSpan), typeof (MyCustomControl), new PropertyMetadata( null )); /// <summary> /// 动画时间 /// </summary> public TimeSpan Duration { get { return (TimeSpan)GetValue(DurationProperty); } set { SetValue(DurationProperty, value); } } public static readonly

WPF使用Animation仿WeChat(微信)播放语音消息

天涯浪子 提交于 2020-04-08 23:48:28
效果图预览 新建MyCustomControl类。 public class MyCustomControl : Control { private static Storyboard MyStory; private ObjectAnimationUsingKeyFrames MyAnimation; private List<BitmapImage> ImageList; private UIElement animation; public static readonly DependencyProperty DurationProperty = DependencyProperty.Register( " Duration " , typeof (TimeSpan), typeof (MyCustomControl), new PropertyMetadata( null )); /// <summary> /// 动画时间 /// </summary> public TimeSpan Duration { get { return (TimeSpan)GetValue(DurationProperty); } set { SetValue(DurationProperty, value); } } public static readonly