是否可以将CSS类应用于HTML文档的<body>
标记?
到目前为止,我一直在尝试这样的事情:
document.getElementsByClassName("body").add("cssClass");
希望在整个DOM上应用过滤器,以便在特定时间使页面变暗,但保留DOM本身的所有功能。
答案 0 :(得分:6)
或者,更短:document.body.className = 'classname';
正如Gaby建议的那样,为了避免替换已经应用的类:
document.body.classList.add('classname')
答案 1 :(得分:1)
document.getElementsByTagName("body")[0].className = 'yo';
.yo {
background-color: #f90;
}
答案 2 :(得分:1)
document.getElementsByTagName('body')[0].classList.add('your-class')
getElementsByTagName()
返回一个节点列表,因此您需要访问第一个(也是唯一的)元素。
答案 3 :(得分:1)
您需要访问正文的类列表 - 并且TagName还会返回节点列表
document.getElementsByTagName('body')[0].classList.add('cssClass')
答案 4 :(得分:1)
几乎,您需要使用document.getElementsByTagName()
并使用如下:
document.getElementsByTagName('body')[0].classList.add('yourClass');
答案 5 :(得分:1)
以下是如何使用ES6执行此操作的示例:
document.querySelector('body');
此codepen示例显示了如何切换类: