JQuery:检查用户是否隐藏了元素

时间:2009-07-06 04:44:51

标签: jquery

如何检查特定元素是否对用户隐藏?在我的代码中,在某些条件下,将调用此代码:

$("#VersionSelectField").hide('fast');

所以我必须确保如果$("#VersionSelectField")被隐藏,那么当我提交表单时我不必验证其中的值(我为此目的使用JQuery Validate library)。

有什么想法吗?

4 个答案:

答案 0 :(得分:75)

$("#VersionSelectField").is(':hidden');

答案 1 :(得分:8)

这对我有用:

$("#VersionSelectField").css("display") == "none";

答案 2 :(得分:0)

尝试$("#versionselectfield[display='none']").length > 0

答案 3 :(得分:0)

您可以使用hide()方法的回调。 例如:

$("#VersionSelectField").hide('fast', function() {
    GlobalVersionSelectFieldHidden = true;
});

上面只有一种方法可以使用它,基本上回调只会在动画结束时触发(即完全隐藏)。当然污染全局变量范围非常顽皮,但只是一个简单的例子。

或者,检查显示是否像Mark建议的“无”也有效,因为JQ效果将完全隐藏使用该特定css属性的东西。