remove classList support
This commit is contained in:
parent
5200776c52
commit
c93d1e209a
1 changed files with 40 additions and 58 deletions
|
|
@ -57,69 +57,51 @@ exports.setText = function(elem, text) {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if (!document.documentElement.classList) {
|
exports.hasCssClass = function(el, name) {
|
||||||
exports.hasCssClass = function(el, name) {
|
var classes = el.className.split(/\s+/g);
|
||||||
var classes = el.className.split(/\s+/g);
|
return classes.indexOf(name) !== -1;
|
||||||
return classes.indexOf(name) !== -1;
|
};
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add a CSS class to the list of classes on the given node
|
* Add a CSS class to the list of classes on the given node
|
||||||
*/
|
*/
|
||||||
exports.addCssClass = function(el, name) {
|
exports.addCssClass = function(el, name) {
|
||||||
if (!exports.hasCssClass(el, name)) {
|
if (!exports.hasCssClass(el, name)) {
|
||||||
el.className += " " + name;
|
el.className += " " + name;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove a CSS class from the list of classes on the given node
|
||||||
|
*/
|
||||||
|
exports.removeCssClass = function(el, name) {
|
||||||
|
var classes = el.className.split(/\s+/g);
|
||||||
|
while (true) {
|
||||||
|
var index = classes.indexOf(name);
|
||||||
|
if (index == -1) {
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
};
|
classes.splice(index, 1);
|
||||||
|
}
|
||||||
|
el.className = classes.join(" ");
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
exports.toggleCssClass = function(el, name) {
|
||||||
* Remove a CSS class from the list of classes on the given node
|
var classes = el.className.split(/\s+/g), add = true;
|
||||||
*/
|
while (true) {
|
||||||
exports.removeCssClass = function(el, name) {
|
var index = classes.indexOf(name);
|
||||||
var classes = el.className.split(/\s+/g);
|
if (index == -1) {
|
||||||
while (true) {
|
break;
|
||||||
var index = classes.indexOf(name);
|
|
||||||
if (index == -1) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
classes.splice(index, 1);
|
|
||||||
}
|
}
|
||||||
el.className = classes.join(" ");
|
add = false;
|
||||||
};
|
classes.splice(index, 1);
|
||||||
|
}
|
||||||
|
if(add)
|
||||||
|
classes.push(name);
|
||||||
|
|
||||||
exports.toggleCssClass = function(el, name) {
|
el.className = classes.join(" ");
|
||||||
var classes = el.className.split(/\s+/g), add = true;
|
return add;
|
||||||
while (true) {
|
};
|
||||||
var index = classes.indexOf(name);
|
|
||||||
if (index == -1) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
add = false;
|
|
||||||
classes.splice(index, 1);
|
|
||||||
}
|
|
||||||
if(add)
|
|
||||||
classes.push(name);
|
|
||||||
|
|
||||||
el.className = classes.join(" ");
|
|
||||||
return add;
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
exports.hasCssClass = function(el, name) {
|
|
||||||
return el.classList.contains(name);
|
|
||||||
};
|
|
||||||
|
|
||||||
exports.addCssClass = function(el, name) {
|
|
||||||
el.classList.add(name);
|
|
||||||
};
|
|
||||||
|
|
||||||
exports.removeCssClass = function(el, name) {
|
|
||||||
el.classList.remove(name);
|
|
||||||
};
|
|
||||||
|
|
||||||
exports.toggleCssClass = function(el, name) {
|
|
||||||
return el.classList.toggle(name);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add or remove a CSS class from the list of classes on the given node
|
* Add or remove a CSS class from the list of classes on the given node
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue