1

我有以下代码:

<img class="sth" data-number="1" src="sth.jpg" alt="">

有几个这样的元素,它们都只是数据数不同。我想对所有元素执行以下操作:

$('.sth').attr('src', 'sth' + data('number') + '.jpg');

这样每个图像都会用自己的编号更改 src。

但是,data('number') 不起作用,$('.sth').data('number') 全部用 sth1.jpg 改变。

有没有办法做到这一点?

4

2 回答 2

3

您可以使用attr()函数

$('.sth').attr('src', function(){
    return 'sth' + $(this).data('number') + '.jpg';
});
于 2013-03-09T16:26:45.653 回答
1

是的,像这样使用 jqueryeach()函数:

$('.sth').each(function(){
    $(this).attr('src', 'sth' + $(this).data('number') + '.jpg');
});

它将在.sth选择器匹配的每个元素上执行。

于 2013-03-09T16:25:32.693 回答