JQuery:检查用户是否隐藏了一个元素
如何检查某个特定的元素是否被用户隐藏? 在我的代码中,在某些情况下,这个代码将被调用:
$("#VersionSelectField").hide('fast');
所以我必须确保如果$("#VersionSelectField")
被隐藏,那么当我提交表单时(我使用JQueryvalidation库来实现这个目的),我不需要validation里面的值。
有任何想法吗?
$("#VersionSelectField").is(':hidden');
这适用于我:
$("#VersionSelectField").css("display") == "none";
您可以使用hide()方法的callback。 例如:
$("#VersionSelectField").hide('fast', function() { GlobalVersionSelectFieldHidden = true; });
以上只是其中一种方法,基本上callback只会在animation完成时触发(即完全隐藏)。 当然,污染全球variables的范围是非常调皮,但只是一个简单的例子。
或者,像Mark一样检查显示是否为“none”也是可行的,因为JQ效应将完全隐藏使用该特定css属性的东西。
试试$("#versionselectfield[display='none']").length > 0
。