Jquery如何在点击时隐藏其他可见的div

请两个问题:

1)在这个例子中, http: //jsbin.com/ijuli,如何点击一个图像,另一个未隐藏的.clickSave div返回隐藏状态。

2)是否有更有效的方法来编写JS代码?

jQuery的

$(".clickSave").hide(); $(".one").click(function() { $(".clickSave.one").toggle(); }); $(".clickSave").hide(); $(".two").click(function() { $(".clickSave.two").toggle(); }); $(".clickSave").hide(); $(".three").click(function() { $(".clickSave.three").toggle(); }); 

非常感谢你提前! 我对这一切都很困惑。

您可以将代码更改为更通用,如下所示:

 $(function() { $(".clickSave").hide(); $(".choose-theme-bar ul li a").click(function() { $(this).find(".clickSave").toggle() //toggle current .end().parent().siblings().find(".clickSave").hide(); //hide others }); }); 

您可以在此处查看演示的更新版本

这应该工作:

  $('。clickSave')。click(function(){
     $( '单击Save')。隐藏()
     $(本).show()
  })

你可以这样做:

 $(document).ready(function() { $(".clickSave").hide(); $("a").click(function() { // attaches click handler to links // toggle clickSave element inside the clicked link var ele = $(".clickSave", this).toggle(); // hide all other visible clickSave elements $(".clickSave:visible").not(ele).hide(); }); }); 

演示