希望有人可以帮忙解决这个问题:
<div id="row4div">
<span id="row4">
<label> Degree : </label>
</span>
</div>
)?下一步不起作用:
img
最后一行返回var banner = document.getElementById('banner');
var imgElement = banner.getElementsByTagName('img');
var imgSrc = imgElement.getAttribute('src');
。我想这是因为第二行,我得到了imgElement.getAttribute is not a function
......但为什么我得到了这个以及我必须做些什么才能得到我想要的东西?
Thanx提前做了很多帮助。
答案 0 :(得分:5)
getElementsByTagName返回一个HTMLCollection,所以得到数组中的第一个元素,然后是它的src
var imgSrc = imgElement[0].getAttribute('src');
var banner = document.getElementById('banner');
var imgElement = banner.getElementsByTagName('img');
var imgSrc = imgElement[0].getAttribute('src');
alert(imgSrc);
<a href="#" id="banner">
<img src="http://placekitten.com/g/200/300" alt="kitten" />
</a>
另一个解决方案是使用querySelector(会慢一点)
var imgElement = document.querySelector('#banner img');
var imgSrc = imgElement.getAttribute('src');
alert(imgSrc);
var imgElement = document.querySelector('#banner img');
var imgSrc = imgElement.getAttribute('src');
alert(imgSrc);
<a href="#" id="banner">
<img src="http://placekitten.com/g/200/300" alt="kitten" />
</a>
答案 1 :(得分:1)
使用儿童的另一种替代解决方案。
var banner = document.getElementById('banner');
var childImg = banner.children[0];
var imgSrc = childImg.getAttribute('src');
alert(imgSrc);
希望这会有所帮助......