在jQuery中(我目前正在使用1.11.4),是否有任何内置辅助函数允许您根据变量显示/隐藏元素?
例如,在根据复选框显示/隐藏某些内容的那一刻,我做了类似这两个例子......
$("#myChk").on("click", function() {
if ($(this).is(":checked")) {
$("#otherEl").show();
} else {
$("#otherEl").hide();
}
});
$("#myChk").on("click", function() {
var $otherEl = $("#otherEl");
($(this).is(":checked") ? $otherEl.show() : $otherEl.hide());
});
是否有一个内置功能,我在文档中很容易找到,允许类似......
$("#myChk").on("click", function() {
$("#otherEl").showOrHide($(this).is(":checked"))
});
我很确定没有任何东西,但我想我会问以防万一。
我知道.toggle()
,但这是基于元素的当前可见性,而不是外部变量。
(如果有人知道.slideUp
和.slideDown
的任何类似内容也会有用。)
答案 0 :(得分:7)
您只需要在文档中进一步阅读。 $(this).is(":checked")
允许您传递true / false来设置显示:
http://api.jquery.com/toggle/#toggle-display
显示
类型:布尔值
使用true显示元素或使用false隐藏 它
所以你可以将.toggle( $(this).is(":checked") )
传递给它,例如struct <optional struct name> {
struct fields...
} <typedef name>;