Jquery中给animation加更多的运作效果实例 - Web前端
作者:98wpeu发布时间:2026-07-18分类:网页前端技术浏览:2
复制代码 代码如下:
//Animation
JQuery.extend({
Easing:
{ // ******* back
backEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
var s = 1.70158; // default overshoot value, can be adjusted to sUIt
return c * (p /= 1) * p * ((s + 1) * p - s) + firstNum;
},
backEaSEOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
var s = 1.70158; // default overshoot value, can be adjusted to suit
return c * ((p = p / 1 - 1) * p * ((s + 1) * p + s) + 1) + firstNum;
},
backEaseInOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
var s = 1.70158; // default overshoot value, can be adjusted to suit
if ((p /= 0.5) < 1)
return c / 2 * (p * p * (((s *= (1.525)) + 1) * p - s)) + firstNum;
else
return c / 2 * ((p -= 2) * p * (((s *= (1.525)) + 1) * p + s) + 2) + firstNum;
},
// ******* bounce
bounceEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
var inv = this.bounceEaseout(1 - p, 1, 0, diff);
return c - inv + firstNum;
},
bounceEaseOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
if (p < (1 / 2.75)) {
return c * (7.5625 * p * p) + firstNum;
}
else if (p < (2 / 2.75)) {
return c * (7.5625 * (p -= (1.5 / 2.75)) * p + .75) + firstNum;
}
else if (p < (2.5 / 2.75)) {
return c * (7.5625 * (p -= (2.25 / 2.75)) * p + .9375) + firstNum;
}
else {
return c * (7.5625 * (p -= (2.625 / 2.75)) * p + .984375) + firstNum;
}
},
// ******* circ
circEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return -c * (Math.sqrt(1 - (p /= 1) * p) - 1) + firstNum;
},
circEaseOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return c * Math.sqrt(1 - (p = p / 1 - 1) * p) + firstNum;
},
circEaseInOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
if ((p /= 0.5) < 1)
return -c / 2 * (Math.sqrt(1 - p * p) - 1) + firstNum;
else
return c / 2 * (Math.sqrt(1 - (p -= 2) * p) + 1) + firstNum;
},
// ******* cubic
cubicEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return c * (p /= 1) * p * p + firstNum;
},
cubicEaseOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return c * ((p = p / 1 - 1) * p * p + 1) + firstNum;
},
cubicEaseInOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
if ((p /= 0.5) < 1)
return c / 2 * p * p * p + firstNum;
else
return c / 2 * ((p -= 2) * p * p + 2) + firstNum;
},
// ******* elastic
elasticEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
if (p == 0) return firstNum;
if (p == 1) return c;
var peroid = 0.25;
var s;
var amplitude = c;
if (amplitude < Math.abs(c)) {
amplitude = c;
s = peroid / 4;
}
else {
s = peroid / (2 * Math.PI) * Math.asin(c / amplitude);
}
return -(amplitude * Math.pow(2, 10 * (p -= 1)) * Math.sin((p * 1 - s) * (2 * Math.PI) / peroid)) + firstNum;
},
elasticEaseOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
if (p == 0) return firstNum;
if (p == 1) return c;
var peroid = 0.25;
var s;
var amplitude = c;
if (amplitude < Math.abs(c)) {
amplitude = c;
s = peroid / 4;
}
else {
s = peroid / (2 * Math.PI) * Math.asin(c / amplitude);
}
return -(amplitude * Math.pow(2, -10 * p) * Math.sin((p * 1 - s) * (2 * Math.PI) / peroid)) + c;
},
// ******* Expo
expoEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return (p == 0) ? firstNum : c * Math.pow(2, 10 * (p - 1)) + firstNum - c * 0.001;
},
expoEaseOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return (p == 1) ? c : diff * 1.001 * (-Math.pow(2, -10 * p) + 1) + firstNum;
},
expoEaseInOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
if (p == 0) return firstNum;
if (p == 1) return c;
if ((p /= 0.5) < 1)
return c / 2 * Math.pow(2, 10 * (p - 1)) + firstNum - c * 0.0005;
else
return c / 2 * 1.0005 * (-Math.pow(2, -10 * --p) + 2) + firstNum;
},
// ******* quad
quadEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return c * (p /= 1) * p + firstNum;
},
quadEaseOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return -c * (p /= 1) * (p - 2) + firstNum;
},
quadEaseInOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
if ((p /= 0.5) < 1)
return c / 2 * p * p + firstNum;
else
return -c / 2 * ((--p) * (p - 2) - 1) + firstNum;
},
// ******* quart
quartEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return c * (p /= 1) * p * p * p + firstNum;
},
quartEaseOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return -c * ((p = p / 1 - 1) * p * p * p - 1) + firstNum;
},
quartEaseInOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
if ((p /= 0.5) < 1)
return c / 2 * p * p * p * p + firstNum;
else
return -c / 2 * ((p -= 2) * p * p * p - 2) + firstNum;
},
// ******* quint
quintEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return c * (p /= 1) * p * p * p * p + firstNum;
},
quintEaseOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return c * ((p = p / 1 - 1) * p * p * p * p + 1) + firstNum;
},
quintEaseInOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
if ((p /= 0.5) < 1)
return c / 2 * p * p * p * p * p + firstNum;
else
return c / 2 * ((p -= 2) * p * p * p * p + 2) + firstNum;
},
// ******* sine
sineEaseIn: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return -c * Math.cos(p * (Math.PI / 2)) + c + firstNum;
},
sineEaseOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return c * Math.sin(p * (Math.PI / 2)) + firstNum;
},
sineEaseInOut: function (p, n, firstNum, diff) {
var c = firstNum + diff;
return -c / 2 * (Math.cos(Math.PI * p) - 1) + firstNum;
}
}
});
调用:
复制代码 代码如下:
$("#div").Animate({
left: v
}, 1000, "circEaseOut");
相关推荐
- jQuery ajax dataType值为text json探索分享 - Web前端
- $.get获取一个文件的内容示例代码 - Web前端
- jQuery实现类似滑动门切换效果的层切换 - Web前端
- jQuery中校验时间格式的正则表达式小结 - Web前端
- JQuery的AJAX实现文件下载的小例子 - Web前端
- 基于jquery编写的横向自适应幻灯片切换特效的实例代码 - Web前端
- jquery实现简单的拖拽效果实例兼容所有主流浏览器 - Web前端
- 让页面上两个div中的滚动条(滑块)同步运动示例 - Web前端
- jquery ajax同步异步的执行最终解决方案 - Web前端
- jquery插件validate验证的小例子 - Web前端
- 网页前端技术排行
-
- 1[Web前端]用javascript实现默认图片替代未显示的图片 - Web前端
- 2分析Iconfont-阿里巴巴矢量常用图标库 - Web前端
- 3【第六章】Foundation之按钮和下拉功能 - Web前端
- 4基于jquery的滚动条滚动固定div(附演示下载) - Web前端
- 5jQuery编写widget的一些技巧分享 - Web前端
- 6jQuery实例教程:制作网页中可折叠的面板 - Web前端
- 7在Mac/PC上远程调试iPhone/iPad上的网页 - Web前端
- 8分享精心挑选的12款优秀jQuery Ajax分页插件和教程 - Web前端
- 9jQuery实现鼠标移到元素上动态提示消息框效果 - Web前端
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


