假设HTML元素id
是已知的,因此可以使用以下命令来引用该元素:
document.getElementById(element_id);
是否存在可用于将CSS类附加到该元素的本机Javascript函数?
var element = document.getElementById(element_id); element.className += " " + newClassName;
瞧.这几乎适用于所有浏览器.前导空间很重要,因为该className
属性将css类视为单个字符串,它应该与class
HTML元素上的属性匹配(其中多个类必须用空格分隔).
顺便说一句,你最好使用像prototype或jQuery这样的Javascript库,它们有方法来执行此操作,以及可以首先检查元素是否已经分配了类的函数.
在原型中,例如:
// Prototype automatically checks that the element doesn't already have the class $(element_id).addClassName(newClassName);
看看有多好??
使用元素的classList属性添加类:
element.classList.add('my-class-name');
移除:
element.classList.remove('my-class-name');
classList是访问元素类列表的便捷替代方法.请参阅http://developer.mozilla.org/en-US/docs/Web/API/Element.classList.
IE <10不支持