只是另一个快速的:
我注意到与fadeOut的差异取决于此是否为目标。这是我的结构。
我的页面上有数据行,每行有两个图标。一个是该行的更新图标,一个是该行的删除图标。当用户单击特定行的更新图标时,我希望更新和删除图标都消失。所以,为了淡化用户点击的东西(更新按钮)及其相应的删除按钮,我正在使用......
$(this).next().add(this).fadeOut('slow');
......哪个有效,但这两个元素不会同时褪色。 此首先淡出(这是更新图标),然后 this.next 淡出(删除图标)。但是,如果我按名称指定两个元素......
$('#updS2, #delS2').fadeOut('slow');
然后他们一起褪色。它为什么不同?
为周五漫无目的道歉。
==== EDIT ====
还注意到使用andSelf的延迟:
$(this).next().andSelf().fadeOut('slow');
答案 0 :(得分: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