如何在不知道ID的情况下从JavaScript中选择HTML元素?

Gif*_*guy 3 html javascript select image

我的页面上有一些未知数量的<img>元素,没有ID,我需要能够浏览它们并根据一些不可预测的因素设置某些属性.

Ble*_*der 6

您可以使用此函数将它们作为数组进行浏览:

document.getElementsByTagName('img');
Run Code Online (Sandbox Code Playgroud)

这是一个img元素数组,您可以将其视为使用该getElementById()函数(即您仍然可以对元素执行相同的操作,但需要引用元素):

document.getElementsByTagName('img')[0]
Run Code Online (Sandbox Code Playgroud)

如果你说的因素真的很复杂,我会使用jQuery(它真的很强大):

$('img[alt]').css('padding', '10px');
Run Code Online (Sandbox Code Playgroud)

这将为10px每个具有alt属性的图像添加填充(我希望,因为我发布了几乎正常工作的代码而臭名昭着).

祝好运!


Jos*_*ola 6

每个人都忘了document.images......

for(var i = 0; i < document.images.length; i++) {
  var img = document.images[i];

  if(img.src == "banner.gif") {
     img.alt = "Banner";
  }
  else if(img.alt == "Giraffe") {
     img.title = "15 feet tall!";
  }
}
Run Code Online (Sandbox Code Playgroud)

如果你需要在另一个元素中获取图像,你可以使用getElementsByTagName...

var elem = document.getElementById('foo');
var fooImages = elem.getElementsByTagName('img');
Run Code Online (Sandbox Code Playgroud)