remove classList support

This commit is contained in:
Fabian Jakobs 2011-12-13 12:21:30 +01:00
commit c93d1e209a

View file

@ -57,25 +57,24 @@ 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);
return classes.indexOf(name) !== -1;
};
};
/**
* Add a CSS class to the list of classes on the given node
*/
exports.addCssClass = function(el, name) {
/**
* Add a CSS class to the list of classes on the given node
*/
exports.addCssClass = function(el, name) {
if (!exports.hasCssClass(el, name)) {
el.className += " " + name;
}
};
};
/**
* Remove a CSS class from the list of classes on the given node
*/
exports.removeCssClass = function(el, 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);
@ -85,9 +84,9 @@ if (!document.documentElement.classList) {
classes.splice(index, 1);
}
el.className = classes.join(" ");
};
};
exports.toggleCssClass = function(el, name) {
exports.toggleCssClass = function(el, name) {
var classes = el.className.split(/\s+/g), add = true;
while (true) {
var index = classes.indexOf(name);
@ -102,24 +101,7 @@ if (!document.documentElement.classList) {
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