我可以使用JavaScript轻松地根据特定条件更改元素的样式或标记:
document.getElementsByTagName("mainclass")[0].style.color:#ffffff;
然而,有没有办法做到这一点,风格包含多个类和像这样的标签
.mainclass .secondaryclass div td {
color: #000000;
}
以下对我不起作用,所以我确定有一种完全不同的方式:
document.getElementsByTagName(".mainclass .secondaryclass div td")[0].style.color:#ffffff;
...
另一个选择,如果更容易弄清楚如何使用JS来嵌入外部样式表(而不是在头部的末端,只是JS代码应该去的地方)
谢谢!
答案 0 :(得分:1)
getElementsByTagName
不接受CSS选择器语法。您正在寻找querySelectorAll
,但您必须迭代返回的列表以指定样式,并it's not completely supported across browsers.
...这就是为什么每个人都使用jQuery。
示例,假设您只想修改第一个匹配的元素:
document.querySelectorAll(".mainclass .secondaryclass div td")[0].style.color = '#ffffff';
请注意从:
到=
的更改,并将颜色值包装在引号中。 JavaScript与CSS有不同的语法;我建议您花一些时间来学习它。