我在一个名为#deck
的主要div上堆叠了一堆div。如果我点击#deck
,则顶部div会向左移动,并会添加一些类(例如:.addClass('on-discard-pile')
)。
如果我再次点击#deck
,则下一个顶部div会移到上一个div顶部的左侧。我有以下工作代码:
var z = 1;
$('#deck .card.flipped').on('click', function () {
if (!$(this).hasClass('dropped')) {
$('.card').removeClass('ui-front');
$(this)
.addClass('ui-front')
.addClass('on-discard-pile')
.addClass('dropped')
.css({'z-index': z++})
.animate({left: '8rem'}, 200)
.draggable({ disabled: false})
.removeClass('flipped');
set(moveCount, moveCount.value + 1);
if (!$(this).is(':first-child')) {
$('.card').removeClass('under-card');
$(this).next().addClass('under-card');
} else {
$('.card').removeClass('under-card');
}
}
});
这一切都很好,但我想稍微改变一下这个功能。我没有移动顶部div,而是想从#deck
移动前三个div。我不想把div移到彼此之上,但是彼此略微超过。因此,第一个顶部div必须向左移动8rem
,然后将秒顶部div移至10rem
,最后移至12rem
那不是全部,最后一个div(转到12rem
并拥有最高的z-index)应该是唯一得到.draggable({ disabled: false})
的div,但是(如果我是另一个)再次点击#deck
,.draggable({ disabled: false})
应再次删除并添加到新的顶部div。
因此,唯一具有最高z-index和类on-discard-pile
的div应该具有.draggable({ disabled: false})
怎么做?在网上进行了一些搜索,查看了loop
,repeat
,array
和:lt()
,但没有找到工作。
感谢任何帮助
答案 0 :(得分:0)
使用"触发":$( '#deck .card.flipped' ).last().trigger("click",[2])