只是想知道如何判断一个jQuery的声明这样确定CSS属性是否为某个值?
if($("#test").css('display', 'block') == true) {
return true;
}
基本上,我希望能够确定如果一个元素当前显示或通过隐藏“显示:块”属性?
只是想知道如何判断一个jQuery的声明这样确定CSS属性是否为某个值?
if($("#test").css('display', 'block') == true) {
return true;
}
基本上,我希望能够确定如果一个元素当前显示或通过隐藏“显示:块”属性?
使用
if($("#test").css('display') == 'block') {
我相当肯定.css()
,返回一个计算值,总是返回小写的结果 - 文档说这个没什么。为了完全确定,你可以做一个
if($("#test").css('display').toLowerCase() == 'block') {
,而你可以依靠display
给予可靠的结果,注意一些CSS属性不会总是出现,他们被定义的方式。例如使用.css()
查询时
a { color: red }
会变成rgb(255,0,0);
。
我想对此进行测试的唯一方法是通过与实际值进行比较:
function displayHidden(elem) {
return $(elem).css('display') === 'hidden';
}
您可以使用可见性,也隐藏
if ($('#test').is(':visible')){
如果能见度是你想要确定的,这实际上会更好,+1 – 2011-05-08 17:10:03
嗨佩卡 - 只是想知道为什么不工作? http://jsfiddle.net/eEF9Y/ – Tom 2011-05-08 17:47:32
@你正在检查'test1'是否有'display:none',它没有。你的意思是'display!='block''? – 2011-05-08 17:49:02
@Pekka - 感谢您的回应:)那么,我想检查#test是否是块 - 如果它是块然后显示test1? – Tom 2011-05-08 17:49:53