3

在加载时,我希望为同一类的每个 div 添加一个数据幻灯片属性号

例如:

<div class='slide' data-slide=''></div>
<div class='slide' data-slide=''></div>
<div class='slide' data-slide=''></div>

我正在尝试使用以下代码,但它所做的只是获取找到的 lnumber 而不是索引:

$( ".slide" ).each(function( index ) {
$('.slide').attr( 'data-slide',''+index+'');
});

我希望它产生以下内容:

<div class='slide' data-slide='1'></div>
<div class='slide' data-slide='2'></div>
<div class='slide' data-slide='3'></div>

请问有什么想法吗?

4

3 回答 3

9

.attr()将函数作为第二个参数,该参数可以返回必须分配给属性的值

$(".slide").attr('data-slide', function (index) {
    return index + 1;
});

演示:小提琴

于 2013-11-01T14:50:08.623 回答
3

each()块内部,this将引用迭代中的当前元素。

$(".slide").each(function(index) {
    $(this).attr('data-slide', index + 1);
});
于 2013-11-01T14:49:19.360 回答
2

小提琴演示

$(".slide").each(function (index) {
    $(this).data('slide', index);
});

更新了小提琴演示

$(".slide").each(function (index) {
    $(this).attr('data-slide', index+1);
});
于 2013-11-01T14:48:50.390 回答