内容目录
addClass()
函数用于为当前jQuery对象所匹配的每一个元素添加指定的css类名。
该函数属于jQuery
对象(实例)。如果你需要删除元素上的css类名,你可以使用removeClass()函数。
语法
jQueryObject.addClass( classNames )
注意:addClass()
会为当前jQuery对象所匹配的每一个元素添加指定的css类名。
参数
参数 | 描述 |
---|---|
classNames | String/Function类型指定的css类名,字符串可以通过空格分隔的方式来添加多个css类名。或者为返回css类名的函数 |
jQuery 1.4 新增支持:参数classNames
可以为函数。addClass()
将根据匹配的所有元素遍历执行该函数,函数中的this
将指向对应的DOM元素。
addClass()
还会为函数传入两个参数:第一个参数就是该元素在匹配元素中的索引,第二个参数就是该元素节点当前的class
属性值。
函数的返回值就是为该元素添加的css类名(也可以通过空格分隔表示多个css类名)。如果返回值为空白字符串或者undefined
,addClass()
将不会为当前元素添加任何css类名。
返回值
addClass()
函数的返回值是jQuery类型,返回当前jQuery对象本身。
addClass()
函数只是在原有css类名的基础上,添加新的css类名,并不会覆盖掉之前已存在的css类名。如果待添加的css类名已经存在,addClass()
并不会重复添加。
示例&说明
以下面这段HTML代码为例:
<div id="n1">
<p id="n2" class="demo test">CodePlayer</p>
<p id="n3" class="foo">专注于编程开发技术分享</p>
</div>
我们编写如下jQuery代码:
var $n2 = $("#n2");
// 为n2添加一个css类名
$n2.addClass("newOne");
document.writeln( $n2.attr("class") ); // demo test newOne
var $n3 = $("#n3");
// 为n3添加3个css类名
$n3.addClass("test class1 class2");
document.writeln( $n3.attr("class") ); // foo test class1 class2
// 为所有p标签添加css类名"item-index",这里的index表示当前元素在所有匹配元素中的索引
$("p").addClass( function(index, classNames){
// 函数内的this表示当前DOM元素
return "item-" + index;
} );
document.writeln( $("#n2").attr("class") ); // demo test newOne item-0
document.writeln( $("#n3").attr("class") ); // foo test class1 class2 item-1
0 条评论
撰写评论