js 修改className
1. 添加。输入:元素,类名
function
addClass(elm,newClass){
var
classes = elm.className.split(
' '
);
var
classIndex=hasClass(elm,newClass);
if
(classIndex==-1)classes.push(newClass);
elm.className = classes.join(
' '
);
}
|
2. 查找。输入:元素,类名 返回:index
function
hasClass(elm,className){
var
classes = elm.className.split(
' '
);
for
(
var
a
in
classes){
if
(classes[a]==className)
return
a;
}
return
-1;
}
|
3. 删除。输入:元素,类名
function
delClass(elm,className){
var
classes = elm.className.split(
' '
);
var
classIndex=hasClass(elm,className);
if
(classIndex!=-1)classes.splice(classIndex,1);
elm.className=classes.join(
' '
);
}
function hasClass(element, className) {
var reg = new RegExp('(\\s|^)'+className+'(\\s|$)');
return element.className.match(reg);
}
function addClass(element, className) {
if (!this.hasClass(element, className))
{
element.className += " "+className;
}
}
function removeClass(element, className) {
if (hasClass(element, className)) {
var reg = new RegExp('(\\s|^)'+className+'(\\s|$)');
element.className = element.className.replace(reg,' ');
}
}
splice() 方法用于插入、删除或替换数组的元素。
语法
arrayObject.splice(index,howmany,element1,.....,elementX)
参数 描述
index 必需。规定从何处添加/删除元素。
该参数是开始插入和(或)删除的数组元素的下标,必须是数字。
howmany 必需。规定应该删除多少元素。必须是数字,但可以是 "0"。
如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。
element1 可选。规定要添加到数组的新元素。从 index 所指的下标处开始插入。
elementX 可选。可向数组添加若干元素。
返回值
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
提示和注释
注释:请注意,splice() 方法与 slice() 方法的作用是不同的,splice() 方法会直接对数组进行修改。