0

I have the following html hierarchy:

...
<div class="custom-img-wrapper">
<a target="_blank" class="link-d" href="#"><img class="custom-below-img" src="some source"></a>
<h3><a target="_blank" class="link-d" href="#">some text</a></h3>
</div>

<div class="custom-img-wrapper">
<a target="_blank" class="link-d" href="#"><img class="custom-below-img" src="some source"></a>
<h3><a target="_blank" class="link-d" href="#">some text</a></h3>
</div>
...

and i am going over the links with this for loop :

var x = document.getElementsByClassName("link-d");
for (i = 0; i < x.length; i++) {
    x[i].href = link;
}

now my question is how can i save the src of the image which is inside the link, so i'll get somwthing like this:

var x = document.getElementsByClassName("link-d");
for (i = 0; i < x.length; i++) {
    var link_of_image_inside_node = x[i].????
    x[i].href = link;
}

i know i can loop over the custom-below-image but that's not what i need, and im looking for a pure JavaScript no jQuery solution any idea? thx

0

1 Answer 1

3

If a tags first child element is image then

var link_of_image_inside_node = x[i].firstChild.src;

OR

var link_of_image_inside_node = x[i].children[0].src; //ignores all the text before img tag

where x[i] is the anchor element

Sign up to request clarification or add additional context in comments.

5 Comments

firstChild can return TextNode also
@Grundy then the x[i].children[0].src will be handy
methinks, this can be noted in answer :-)
@Grundy done however you can also edit any answer if you feel like it :)
I know :-) i just notice that first variant can return wrong result :-) solution you suggest self

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.