使用JavaScript向元素添加CSS类
Adding CSS classes to an element using JavaScript
<body>
<div id="foo"></div>
<button onclick ="addClass(el,'Test') ">click</button>
</body>
<script>
function addClass(element, myClass) {
element.className = myClass;
}
var el = document.getElementById('foo');
</script>
我想添加更多的类,而不删除以前的类。
工作小提琴演示
试试这个:
function addClass(element, myClass) {
element.className += ' ' + myClass;
}
var foo = document.getElementById('foo');
addClass(foo, 'a');
addClass(foo, 'b');
CSS类在属性中以空格分隔,因此:
function addClass(element, myClass){
element.className += ' '+myClass;
}
或者,对于现代浏览器,使用classList
API:
function addClass(element, myClass){
element.classList.add(myClass);
}
…你甚至可以为旧的浏览器填充。
如果您不使用classList
,并希望确保您的class
属性在字符串中只有一个给定类的实例,您可以首先删除它(完全不必要,但用于OCD):
var re = new RegExp( "(?:^|''s)"+myClass+"(?:''s|$)", 'g' );
el.className = el.className.replace(re, '');
相关文章:
- jquery css添加IE8过滤器
- 如何将 CSS 添加到 CKEDITOR
- 将 JavaScript 和 CSS 添加到页脚
- 如何将动画 css 添加到引导下拉列表
- 将 css 添加到 jquery 子元素
- 如何使用jquery或javascript将css添加到伪元素
- 将悬停CSS添加到用javascript处理的表单元格中
- jQuery - 将 css 添加到 localStorage 变量
- 将内联 CSS 添加到 Timnymce 中的 body
- 通过JavaScript CSS添加元素后,hack不起作用
- 将 CSS 添加到文档加载后创建的元素
- 如何使用 JS 或 CSS 添加透明度层
- 使用 jQuery 将 CSS 添加到正文中的 head 标签
- 将 CSS 添加到 Javascript 小部件
- jQuery没有't将CSS添加到附加的输入中
- 将自定义CSS添加到使用Web视图呈现的HTML页面中
- 如何将css添加到json响应中
- 将css添加到已经存储在变量中的jQuery对象的伪元素中
- 将css添加到html中表的动态添加行中
- 为什么jQuery(document).ready不工作?/如何将CSS添加到jQuery中的元素中