Javascript循环遍历图像属性

时间:2014-11-13 09:38:21

标签: javascript jquery html

我的网站上有div,其中包含许多图片。我试图获取所有onclick内的每个图片的div属性。

<div class="hoi">
    <img src="" onclick="alert('hoi')"/>
    <img src="" onclick="alert('hoi')"/>
</div>

我已尝试过以下Javascript代码:

var count = $(".hoi img").length;

for(var i = 0; i <= count; i++){
    alert($('.hoi').find('img').getAttribute('onclick'));
}

但是我收到以下错误Uncaught TypeError: undefined is not a function

这是一个小提琴 http://jsfiddle.net/4Lhn0u87/7/

2 个答案:

答案 0 :(得分:2)

jQuery对象中没有名为getAttribute()的方法,您有.attr()getAttribute()是一种dom api方法。

$('.hoi img').each(function(){
    console.log($(this).attr('onclick'))
})

另外,要迭代一组元素,您可以使用.each()

答案 1 :(得分:0)

onclick is a event you can't use it as a data-attribute.use some other.
Here is the working code:

http://jsfiddle.net/silpa/4Lhn0u87/17/

$('.hoi img').each(function(){
$(this).on('click',function(){
    alert($(this).attr('data-onclick'));
})
})

我更改了onclick to data-onclick并删除了警告(&#39; hoi&#39;)并放置了image_1和image_2以便理解