if (!("classList" in document.documentElement)) {
Object.defineProperty(HTMLElement.prototype, 'classList', {
get: function() {
var self = this;
function update(fn) {
return function(value) {
var classes = self.className.split(/\s+/g),
index = classes.indexOf(value);
fn(classes, index, value);
self.className = classes.join(" ");
}
}
return {
add: update(function(classes, index, value) {
if (!~index) classes.push(value);
}),
remove: update(function(classes, index) {
if (~index) classes.splice(index, 1);
}),
toggle: update(function(classes, index, value) {
if (~index)
classes.splice(index, 1)
解决classList的兼容问题(ie9及以下)
最新推荐文章于 2021-02-03 08:52:43 发布
本文探讨如何在不支持classList属性的IE9及以下版本中,实现类名操作的兼容解决方案,以确保JavaScript代码在现代浏览器和旧版IE中都能正常工作。
摘要由CSDN通过智能技术生成