4

另一个快速的:

我注意到淡出的差异取决于是否是目标。这是我的结构。

我的页面上有多行数据,每行有两个图标。一个是该行的更新图标,一个是该行的删除图标。当用户单击特定行的更新图标时,我希望更新和删除图标都消失。因此,为了淡化用户单击的内容(更新按钮)及其相应的删除按钮,我正在使用...

$(this).next().add(this).fadeOut('slow');

...这行得通,但是这两个元素不会同时消失。this首先淡出(即更新图标),然后this.next淡出(删除图标)。但是,如果我按名称指定这两个元素...

$('#updS2, #delS2').fadeOut('slow');

然后它们一起消失。为什么不一样?

为周五的胡说八道道歉。

====编辑====

还注意到使用 andSelf 的延迟:

$(this).next().andSelf().fadeOut('slow');
4

1 回答 1

2

好的,我发现了问题所在。之前有一个 fadeTo 命令作用于同一事件处理程序中页面上的所有图标。我将我的代码移到了fadeTo的回调中,现在它可以工作了。应该先检查一下。我现在要爬回我的岩石下...

所以这是我正在使用的代码。我所有的图标都有一类“动作”。我想让页面上的所有图标变暗,除了用户单击的行上的图标 - 我希望这些图标完全消失,一起在一个单元中。这行得通。

$('.action').click(function() {
    var me = $(this);
    $('.action').not(this).fadeTo('slow', 0.2, function() {
        $(me).next().add(me).fadeOut('slow');
    }).unbind('click');
)};

我不得不使用我,因为如果我使用它,它会淡出所有图标,而不仅仅是我想要的两个。可能是一种更好的方法,但我想我会尝试回答这个问题,即使答案是“我一开始就错了”。对不起所有:S

于 2010-04-16T10:43:31.207 回答