How can I select an HTML element from JavaScript without knowing its identifier?

I have an unknown number of elements <img>on my page without identifiers, and I need to be able to view them and set certain attributes based on a number of unpredictable factors.

+3
source share
8 answers

Use document.getElementsByTagName():

var imgs = document.getElementsByTagName("img");

for(var i = 0; i < imgs.length; i++) {
   var currentImg = imgs[i];
   if (currentImg.somAttr) {
       // do your stuff
   }
}
+4
source

You can use this function to view them as an array:

document.getElementsByTagName('img');

img, , getElementById() (.. , ):

document.getElementsByTagName('img')[0]

, , , jQuery ( ):

$('img[alt]').css('padding', '10px');

10px alt (, , ).

!

+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!";
  }
}

, getElementsByTagName...

var elem = document.getElementById('foo');
var fooImages = elem.getElementsByTagName('img');
+6

document.getElementsByName.

<script type="text/javascript">
function getElements()
  {
  var x=document.getElementsByName("x");
  alert(x.length);
  }
</script>

<input name="x" type="text" size="20" /><br />
<input name="x" type="text" size="20" />
+1

jQuery $( "img" ). each() am

0

jQuery, , . . jQuery , , , (, ..) .

$("image .className").attr(....

http://www.jquery.com

0

, , JQuery?

-1

Source: https://habr.com/ru/post/1776613/


All Articles