Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript向html元素添加类_Javascript_Html - Fatal编程技术网

使用javascript向html元素添加类

使用javascript向html元素添加类,javascript,html,Javascript,Html,我有以下脚本: <script> document.getElementById('myId').classList.add('myClass'); </script> 要添加您使用的类名 document.getElementById('myId').className="Your class name"; 根据您的问题,您希望以锚定标记为目标,并在那里设置类,因此: var parent = document.getElementById('one'); va

我有以下脚本:

<script>
  document.getElementById('myId').classList.add('myClass');
</script>

要添加您使用的类名

document.getElementById('myId').className="Your class name";

根据您的问题,您希望以锚定标记为目标,并在那里设置类,因此:

var parent = document.getElementById('one');
var anchor = parent.getElementsByTagName("A")[0];
anchor.classList.add('myClass');
应该这样做

如果有多个锚定标记,则可以在它们之间循环

var parent = document.getElementById('one');
var anchorList = parent.getElementsByTagName("A");

for(i = 0; i < anchorList.length; i++) {
    anchorList[i].classList.add('myClass');
}
var parent=document.getElementById('one');
var anchorList=parent.getElementsByTagName(“A”);
对于(i=0;i
使用
document.getElementById('myId')。className
的可能副本
中是否只有一个
a
元素
#myId
?还是有多个?是否要将该类添加到所有这些元素中?除非使用jQuery(或任何其他支持此类绑定的第三方库),否则很可能会强制遍历myId dom元素的所有元素,除非您的myId中只有一个元素。这似乎根本没有针对OP的问题。这针对的是错误的元素,并覆盖所有已设置的类。就是这样,但是仍然不清楚OP是否有一个或多个
a
元素。@MrVentzi+1很好的答案。可能您也应该在答案中添加浏览器兼容性。如果是单个元素,这会稍微短一点:
document.querySelector(“#一个a”).classList.add(…)
var parent = document.getElementById('one');
var anchorList = parent.getElementsByTagName("A");

for(i = 0; i < anchorList.length; i++) {
    anchorList[i].classList.add('myClass');
}