[英]Can't access element's class to change its name in JavaScript
我想将元素的类从score -box1 更改为score -box1.-active 。 我创建了一个 const $target 来尝试访问类 score -box1 但它不起作用。
const $target = document.getElementByClassname('score -box1')
function PlayerScore(score = 0){
if(score == 1){
$target.toggle('-active');
}else if(score == 2){
$target.toggle('-active');
}else if(score == 3){
$target.toggle('-active');
}
return( /*html*/
`
<div class = "container">
<div class = "score -box1">one</div>
<div class = "score -box2">two</div>
<div class = "score -box3">three</div>
</div>
`
)
}
正确的方法是.querySelectorAll
并且它返回一个节点列表,如果您在末尾添加一个[0]
如下所示,您将获得该节点列表的第一个元素(这可能是您现在想要的),但是如果您想要所有目标元素都使用for loop
遍历document.querySelectorAll('score -box1')
数组。
const $target = document.querySelectorAll('score -box1')[0]
function PlayerScore(score = 0){
if(score == 1){
$target.toggle('-active');
}else if(score == 2){
$target.toggle('-active');
}else if(score == 3){
$target.toggle('-active');
}
return( /*html*/
`
<div class = "container">
<div class = "score -box1">one</div>
<div class = "score -box2">two</div>
<div class = "score -box3">three</div>
</div>
`
)
}
或者您可以将.querySelectorAll
替换为.querySelector
,它会自动返回第一个元素: https ://www.w3schools.com/jsref/met_document_queryselector.asp
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.