2

我有带触发器和覆盖的块。

这是一个示例 jsFiddle:http: //jsfiddle.net/uRstt/7/

当在特定块上触发叠加淡入淡出效果时,我希望其他块上的叠加淡出。此外,如果您单击具有活动叠加层的块上的触发器,它必须淡出。

这是我试图实现但没有成功的代码。

$(".trigger").click(function(){
  !$(this).parent().find(".overlay").fadeOut();
  $(this).parent().find(".overlay").stop(true,true).fadeToggle();
}); 

感谢Adeneo,这是正确的代码

$(".trigger").click(function(){
   $(this).siblings(".overlay").stop(true,true).fadeToggle().closest('.container').siblings().find('.overlay').fadeOut();
});  

这是一个工作jsFiddle的示例

4

2 回答 2

0

做这个:

$(".trigger").click(function(){
    $(this).siblings(".overlay").stop(true,true).fadeToggle()
    .closest('.container').siblings().find('.overlay').fadeOut();
});
于 2012-12-11T08:49:13.040 回答
0

如果我理解正确,这样的事情应该有效:

$(".trigger").click(function(){
    $(this).next().stop(true,true).fadeToggle();
    $(this).parent().siblings().children('.overlay:visible').fadeOut();
});

演示:http: //jsfiddle.net/uRstt/9/

于 2012-12-11T08:49:16.437 回答