[英]What's wrong with this JavaScript code?
var allHTMLElements = document.body.getElementsByTagName("*");
for (var i = 0; i < allHTMLElements.length; i++) {
if (allHTMLElements[i].getAttribute("group") && allHTMLElements[i].getAttribute("index")) continue;
allHTMLElements[i].style.color = "red";
}
<div group="myGroup">Hello</div>
<div>Hello</div>
<div index="d534">Hello</div>
所有的div变为红色,具有组和索引的div保持默认颜色。 只有中间应该变成红色,但是没有。
您要使用“或”而不是“和”:
allHTMLElements[i].getAttribute("group") || allHTMLElements[i].getAttribute("index")
您的if语句应该对它们进行“或”运算,而不是对它们进行“与”运算
问题是,您使用的是&&
时,你应该用||
if (allHTMLElements[i].getAttribute("group") || allHTMLElements[i].getAttribute("index")) continue;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.