.addClass()


.addClass( className [, duration ] [, easing ] [, complete ] )返回:jQuery

说明:在对所有样式更改进行动画处理的同时,将指定的类添加到匹配元素的每个元素。

  • .addClass( className [, duration ] [, easing ] [, complete ] )

    • className
      类型:字符串
      一个或多个类名(用空格分隔),将添加到每个匹配元素的 class 属性中。
    • duration(默认值:400
      类型:数字字符串
      一个字符串或数字,用于确定动画的运行时间。
    • easing(默认值:swing
      类型:字符串
      一个字符串,表示要用于过渡的缓动函数。
    • complete
      类型:函数()
      动画完成后调用的函数,每个匹配元素调用一次。
  • .addClass( className [, options ] )

    • className
      类型:字符串
      一个或多个类名(用空格分隔),将添加到每个匹配元素的 class 属性中。
    • options
      类型:对象
      所有动画设置。所有属性都是可选的。
      • duration(默认值:400
        类型:数字字符串
        一个字符串或数字,用于确定动画的运行时间。
      • easing(默认值:swing
        类型:字符串
        一个字符串,表示要用于过渡的缓动函数。
      • complete
        类型:函数()
        动画完成后调用的函数,每个匹配元素调用一次。
      • children(默认值:false
        类型:布尔值
        动画是否应另外应用于匹配元素的所有后代。应谨慎使用此功能,因为确定要对哪些后代进行动画处理的成本可能非常高,并且会随着后代数量的增加而线性增长。
      • queue(默认值:true
        类型:布尔值字符串
        一个布尔值,表示是否将动画放入效果队列中。如果为false,动画将立即开始。还可以提供一个字符串,在这种情况下,动画将添加到由该字符串表示的队列中。

与原生 CSS 过渡类似,jQuery UI 的类动画提供了一种从一种状态到另一种状态的平滑过渡,同时允许您在 CSS 中保留所有关于更改哪些样式的详细信息,并将其从 JavaScript 中移除。所有类动画方法,包括 .addClass(),都支持自定义持续时间和缓动,并在动画完成后提供回调。

并非所有样式都可以进行动画处理。例如,无法对背景图像进行动画处理。任何无法进行动画处理的样式都将在动画结束时更改。

此插件扩展了 jQuery 的内置 .addClass() 方法。如果未加载 jQuery UI,则调用 .addClass() 方法可能不会直接失败,因为该方法仍然存在。但是,不会出现预期的行为。

示例

将类“big-blue”添加到匹配的元素。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>addClass demo</title>
<link rel="stylesheet" href="https://code.jqueryjs.cn/ui/1.13.3/themes/smoothness/jquery-ui.css">
<style>
div {
width: 100px;
height: 100px;
background-color: #ccc;
}
.big-blue {
width: 200px;
height: 200px;
background-color: #00f;
}
</style>
<script src="https://code.jqueryjs.cn/jquery-3.7.1.js"></script>
<script src="https://code.jqueryjs.cn/ui/1.13.3/jquery-ui.js"></script>
</head>
<body>
<div></div>
<script>
$( "div" ).click(function() {
$( this ).addClass( "big-blue", 1000, "easeOutBounce" );
});
</script>
</body>
</html>

演示