animate()方法对一组CSS属性执行自定义动画。
动画使从一种CSS样式配置到另一种CSS样式配置的过渡动画成为可能。
所有动画属性都应设置为单个数值(例如,宽度,高度或左值)。
除字符串“ show”,“ hide”和“ toggle”外,字符串值不能设置动画(例如,背景色)。这些值允许隐藏和显示动画元素。
动画属性也可以是相对的。如果为值提供了前导+=或-=字符序列,则通过从属性的当前值中添加或减去给定的数字来计算目标值。
除了样式属性,还可以对某些非样式属性(例如:scrollTop和scrollLeft)进行动画处理。
$(selector).animate({styles}, duration, easing, callback)$(selector).animate({styles}, {options})通过更改元素的宽度来设置元素的动画:
$("#btn1").click(function(){
$("div").animate({width: "500px"});
});测试看看‹/›通过更改元素的宽度和高度,使其具有动画效果:
$("#btn1").click(function(){
$("div").animate({width: "500px"});
$("div").animate({height: "400px"});
});测试看看‹/›通过传递多个样式属性和值来对元素进行动画处理:
$("#btn1").click(function(){
$("div").animate({
width:"500px",
height:"400px"
});
});测试看看‹/›使用带有animate()的duration和easing的参数:
$("button").click(function(){
$("div").animate({width:"500px", height:"400px"}, 4000, "linear");
});测试看看‹/›将animate()与回调函数一起使用:
$("button").click(function(){
$("div").animate({
width:"500px",
height:"400px"
}, 500, "linear",
function(){
$(this).after("<h2>动画完成</h2>");
});
});测试看看‹/›使用备用语法指定多个动画{ styles}和{ options }:
$("button").click(function(){
$("div").animate({
width:"500px",
height:"400px"
}, {
duration:500,
easing:"linear",
complete:function(){
$(this).after("<h2>动画完成</h2>");
}
});
});测试看看‹/›用户滚动页面时添加平滑滚动:
let size = $(".main").height(); // 获取".main" 高度
$(window).keydown(function(event) {
if(event.which === 40) { // 如果按下向下箭头键
$("html, body").animate({scrollTop: "+=" + size}, 300);
} else if(event.which === 38) { // 如果按下向上箭头键
$("html, body").animate({scrollTop: "-=" + size}, 300);
}
});测试看看‹/›使用相对值为所有段落设置动画:
$("p").click(function(){
$(this).animate({
fontSize: "+=5px",
padding : "+=10px"
});
});测试看看‹/›此外,我们甚至可以指定属性的动画值"show","hide"或"toggle":
$("button").click(function(){
$("div").animate({height: "toggle"});
});测试看看‹/›$(selector).animate({styles}, duration, easing, callback)| 参数 | 描述 |
|---|---|
| styles | 必需。指定产生动画效果的一个或多个 CSS 属性/值。 注意:与animate()方法一起使用时,属性名称必须为驼峰式:是paddingTop而不是padding-top,marginLeft而不是margin-left以及依此类推 |
| duration | (可选)确定动画将运行多长时间的字符串或数字。预设值为400毫秒 可能的值:
|
| easing | (可选)指定在动画的不同点中元素的速度。默认值是 "swing"。 可能的值:
|
| callback | (可选)animate 函数执行完之后,要执行的函数。 |
$(selector).animate({styles}, {options})| 参数 | 描述 |
|---|---|
| styles | 必需。指定产生动画效果的一个或多个 CSS 属性/值(同上)。 |
| options | (可选)指定动画的额外选项 可选值:
|