2010-08-05 44 views
6

我怎么能使用相邻的选择器“+”与$(this)。

我需要用//这不工作的注释行帮助:

$(".ExpandCollapse").click(function() { 
      if ($(this).nextUntil('.Collapsable').is(':visible')) 
      { 
       //this doesnt work 
       $(this + ".Collapsable").hide(); 
      } 
      else 
      { 
       //this doesnt work 
       $(this + ".Collapsable").show(); 
      } 
     }); 

能给我一个忙吗?

非常感谢。

最好的问候。

何塞

回答

9

使用next()

$(this).next(".Collapsable").hide(); 

或者干脆:

$(this).next().hide(); 
2

您还可以减少在具有隐蔽性两个语句,并显示:

$(this).next().toggle(); 
1

this是对调用的DOM element的引用。你不能连接string

所以你要么可以直接使用this采取行动,那么

$(this).hide(); 

,或者您可以通过DOM从那里

$(this).next().hide(); 
$(this).prev().hide(); 
$(this).closest('.Collapsable').hide(); 
// another 200 methods