单击它们获取图像元素的SRC

时间:2014-07-21 22:51:05

标签: javascript

尝试将click事件处理程序附加到每个图像,然后在单击图像时向SRC发出警报。

HTML:

<img src="http://www.lorempixel.com/100/200">

<img src="http://www.lorempixel.com/200/200">

<img src="http://www.lorempixel.com/400/200">

<img src="http://www.lorempixel.com/200/200">

JavaScript的:

var pics = document.getElementsByTagName('IMG');

for (x=0; x < pics.length; x++) {
    pics[x].addEventListener('click', function(){
        alert(pics[x].getAttribute('src'));
    }, false);
}

我知道这很简单,我搞砸了,但我无法理解。

1 个答案:

答案 0 :(得分:1)

添加事件侦听器时,必须引用单击的元素而不是循环元素 因此,它不会是pics[x]而是this(指的是点击的元素)。

这是一个jsFiddle:
http://jsfiddle.net/Hbc4M/

var pics = document.getElementsByTagName('IMG');

for ( x=0; x < pics.length; x++ ) {
    pics[x].addEventListener('click', function(){
        alert(this.getAttribute('src'));
    }, false);
}