如何在 for 循环中 getElementsByTagName

问题描述 投票:0回答:3

我尝试这样做。但未能成功。请帮忙。

var myP = document.getElementsByTagName('p');
for (var i = 0; i < myP.lenght; myP++) {
  myP[i].style.color = red;
}
<div id="wrap">
  <p>first paragraph </p>
  <p>2nd paragraph </p>
  <p>3rd paragraph </p>
</div>
javascript
3个回答
1
投票

代码存在三个问题。第一:

myP.lenght
应该是
myP.length
。第二:您正在增加
myP
,您应该增加
i
,第三个:
style.color
应该是
"red"
而不是
red

var myP = document.getElementsByTagName('p');
for (var i = 0; i < myP.length; i++) { // should be i++
  myP[i].style.color = "red"; // color = "red"
}
<div id="wrap">
  <p>first paragraph </p>
  <p>2nd paragraph </p>
  <p>3rd paragraph </p>
</div>


0
投票

var myP = document.getElementsByTagName('p');
for (var i = 0; i < myP.length; i++) { // <-- increment i, not myP
  myP[i].style.color = 'red'; // <-- string not variable
}


0
投票

let elements = [...document.getElementsByTagName('p')];
elements.forEach((p) => {
  p.style.color = 'red';
});

© www.soinside.com 2019 - 2024. All rights reserved.