用布尔值来隐藏/显示元素

我倾向于在我的代码中有很多这些

if(shouldElementBeVisible) $element.show() else $element.hide() 

有没有更优雅的方式与JavaScript,jQuery或下划线打包? 理想情况下,我想要的东西看起来像这样

 $element.showOrHideDependingOn(shouldElementBeVisible) 

显然你可以传递一个布尔值到togglefunction

 $element.toggle(shouldElementBeVisible) 

jQuery的toggle : http : //api.jquery.com/toggle/

$element.toggle();

这将显示元素是否隐藏,如果显示则将其隐藏。

就在这里!

 $element.toggle(); 

没有任何参数, toggle只是切换元素的可见性(我不是指visibility属性),并取决于元素的当前状态。

 $element.toggle(display); 

如果您使用布尔参数调用toggle ,则会显示元素,如果为true ,则显示元素,如果为false ,则显示元素

资源

函数.toggle()改变元素的display

如果你想改变visibility ,相反,我build议使用?:操作符。 为此,在你的CSS上,将可见性设置为原始状态,并在JS中简单地放:

  var checkboxChecked = $("#yourCheckbox").(":checked"); $("#yourElement").css("visibility", checkboxChecked ? "visible" : "hidden");