jQuery中Animate进阶用法(三)
progress
Type: Function( Promise animation, Number progress, Number remainingMs )
每一步动画完成后调用的一个函数,无论动画属性有多少,每个动画元素都执行单独的函数。(version added: 1.8)
Number progress表示当前动画进展程度0~1 Number remainingMs 就是变化到最终动画属性值还差多少
CSS
.block {
position: relative;
background-color: #abc;
width: 40px;
height: 40px;
float: left;
margin: 5px;
}
.wrap{position:relative;float:left;width:400px;}
#go{border:1px solid red;color:blue;cursor:pointer;}
Html
<p><button id="go">Run>></button></p>
<div class="wrap">
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
</div>
Javscript
var j=0,k=0;
$( "#go" ).one("click",function() {
$( ".block:first" ).animate(
{
left: 100,top:200
},
{
duration: 1000,
step: function( now, fx ){
k++;
if(k==1) console.log(fx);
$( ".block:gt(0)" ).css( fx.prop, now );//注意到prop的变化性
},
progress:function(a,p,r){
j++;
if(j==1){console.log(a);console.log(a.props)}
a.progress(function(){
console.log("Hi"+j);//注意progress的运行时机
});
console.log(p+"---"+r);//注意p,r的变化
}
});
});
控制台观察输出之后的值,你会有所得!
做个简单的进度条动画,开始是红色,到30%时候变为绿色,到60%变为粉色,没有用颜色变化插件,选择的是替换class。让大家对这个progress、step应用有个了解,愿此例抛砖引玉!
CSS
.progressBar{float:left;position:relative;width:500px;height:30px;border:1px solid orange;background-color:#999;}
.progressBar p{padding:;margin:;position:absolute;left:;top:;height:30px;}
.red{background-color:red;}
.green{background-color:green;}
.pink{background-color:pink;}
Html
<div class="progressBar">
<p class="progress"></p>
</div>
Javascript
$(".progressBar p").addClass("red").animate(
{"width":500},
{
duration:5000,
progress:function(a,p,r){
if(p>0.3&&!$(this).hasClass("green")) $(this).removeClass().addClass("green");
if(p>0.6&&!$(this).hasClass("pink")) $(this).removeClass().addClass("pink");
}
}
);
从stackoverflow中看到有人问到此问题,你也可以发表自己的看法
http://stackoverflow.com/questions/8970887/jquery-animate-show-the-percent-of-the-animation-progress
jQuery中Animate进阶用法(三)的更多相关文章
- jQuery中Animate进阶用法(一)
jQuery中animate的用法你了解多少呢?如果仅仅是简单的移动位置,显示隐藏,哦!天哪你在浪费资源!因为animate太强大了,你可以有很多意想不到的用法!让我们一起研究一下吧~~ 首先要了解j ...
- jQuery中Animate进阶用法(二)
Step Type: Function( Number now, Tween tween )每个动画元素的每个动画属性将调用的函数.这个函数为修改Tween 对象提供了一个机会来改变设置中得属性值. ...
- jQuery中animate()方法用法实例
本文实例讲述了jQuery中animate()方法用法.分享给大家供大家参考.具体分析如下: 此方法用于创建自定义动画,并且能够规定动画执行时长.擦除效果.动画完成后还可以地触发一个回调函数. ani ...
- jQuery中attr()方法用法实例
本文实例讲述了jQuery中attr()方法用法.分享给大家供大家参考.具体分析如下: 此方法设置或返回匹配元素的属性值. attr()方法根据参数的不同,功能也不同. 语法结构一: 获取第一个匹配元 ...
- jQuery中on()方法用法实例详解
这篇文章主要介绍了jQuery中on()方法用法,实例分析了on()方法的功能及各种常见的使用技巧,并对比分析了与bind(),live(),delegate()等方法的区别,需要的朋友可以参考下 本 ...
- jQuery中index()方法用法实例
本文实例讲述了jQuery中index()方法用法.分享给大家供大家参考.具体分析如下: 此方法可以搜索匹配元素,并返回元素的索引值.索引值是从0开始的. 语法结构一: 当此方法没有参数的时候,返回值 ...
- jQuery中on()方法用法实例
这篇文章主要介绍了jQuery中on()方法用法,实例分析了on()方法的功能.定义及在匹配元素上绑定一个或者多个事件处理函数的使用技巧,需要的朋友可以参考下 本文实例讲述了jQuery中on()方法 ...
- jQuery中eq()方法用法实例
本文实例讲述了jQuery中eq()方法用法.分享给大家供大家参考.具体分析如下: 此方法能够获取匹配元素集上的相应位置索引的元素. 匹配元素集上元素的位置索引是从0开始的. 语法结构: 复制代码 代 ...
- jQuery中$.fn的用法示例介绍
$.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效,下面有个不错的示例,喜欢的朋友可以参考下 如扩展$.fn.abc(),即$.fn.abc()是对jquery ...
随机推荐
- 按键精灵对APP自动化测试(下)
上一篇介绍了安卓app上使用按键精灵的实践,这里再来说说苹果上的app. 由于iOS相关工具对操作系统的限制,目前在iOS10.0.2系统上应用成功. 二. 苹果手机按键精灵APP录制 适 ...
- mac10.12.6系统使用cmake安装opencv3.3.0+opencv_contrib-3.3.0
brew与cmake brew安装 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/ins ...
- JWT总结
Json web token (JWT) 什么是JWT? Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该toke ...
- linux 常用命令-ps(process state)
ps -ef | grep 端口号:查看某个端口的占用情况 ps -tunlp | grep 端口号:查看占用端口的进程名称
- ns3的输入输出奥秘(三) Tracing系统
Tracing系统 (1)ASCII Tracing 还是以myfirst.cc为例子 可以在Simulator::Run()前面加上 AsciiTraceHelper ascii; pointToP ...
- Java编写准备数据源
1.装饰设计模式 package com.itheima.ds; import java.sql.Array; import java.sql.Blob; import java.sql.Callab ...
- Ubuntu安装eclipse,并创建桌面快捷方式
系统:Ubuntu 16.04 JDK版本:1.8.0_121 Ubuntu下安装JDK配置环境变量可见我的这篇文章 http://www.cnblogs.com/AloneZ/p/Ubuntu1 ...
- PAT 甲级 1078 Hashing
https://pintia.cn/problem-sets/994805342720868352/problems/994805389634158592 The task of this probl ...
- 小程序开发 event对象中 target和currentTarget 属性的区别。
首先本质区别是: event.target返回触发事件的元素 event.currentTarget返回绑定事件的元素 p包含在div内 在outer上点击时,target跟currentTarget ...
- TCP 协议连接与关闭的握手
原文链接 http://blog.csdn.net/oney139/article/details/8103223 TCP头部: 其中 ACK SYN 序号 这三个部分在以下会用到,它们 ...