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

我的代码中往往有很多这样的东西

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

有没有比 javascript、 jquery 或者下划线更优雅的打包方式呢

$element.showOrHideDependingOn(shouldElementBeVisible)
48015 次浏览

有的!

$element.toggle();

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

$element.toggle(display);

如果使用布尔参数调用 toggle,如果是 true,则显示元素,如果是 false,则显示 hidden

来源

JQuery 有 toggle: http://api.jquery.com/toggle/

$element.toggle();

如果元素被隐藏,这将显示该元素,如果显示该元素,则隐藏该元素。

显然,您可以只传递一个布尔值到 toggle函数

$element.toggle(shouldElementBeVisible)
$element[ shouldElementBeVisible?'show':'hide' ]()