怎样判断jQuery 元素是否显示与隐藏

如题所述

判断jQuery 元素是否显示与隐藏的方法如下:

1、使用CSS属性

var display =$('#id').css('display');if(display == 'none'){   alert("被你发现了,我是隐藏的啦!");}

2、使用jquery内置选择器

假设我们页面有这么个标签,

<div id="test"><p>仅仅是测试所用</p></div>

那么,我们可以用以下语句来判断id为"test"的标签是否隐藏:

if($("#test").is(":hidden")){...} //前提是已经将jQuery的库导进来了

这样,我们就能够很简单地判断一个元素是否隐藏,并根据其状态来设置动,比如:

if($("#test").is(":hidden")){       $("#test").show();    //如果元素为隐藏,则将它显现}else{      $("#test").hide();     //如果元素为显现,则将其隐藏}

3、jQuery判断对象是否显示或隐藏

Js代码

// jQuery("#tanchuBg").css("display")  // jQuery("#tanchuBg").is(":visible")  // jQuery("#tanchuBg").is(":hidden")  

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-05-12

JQuery中元素是否显示或者隐藏,有两种方式,主要通过获取元素节点的hidden和visible两个属性来进行判断,代码如下:

var node=$('#id');

第一种写法

if(node.is(':hidden')){  //如果node是隐藏的则显示node元素,否则隐藏
  node.show(); 
}else{
  node.hide();
}

第二种写法

if(!node.is(':visible')){  //如果node是隐藏的则显示node元素,否则隐藏
  node.show(); 
}else{
  node.hide();
}
if(node.is(':visible')){  //如果node是显示的则隐藏node元素,否则显示
  node.hide();
}else{
  node.show();
}

本回答被网友采纳
第2个回答  2016-04-24
可以用jquery获得他display属性的值,根据这个值来判断。
$("#div").css("display").如果值是block的话就是显示的,如果是none就是隐藏的。如果这个值没有设置,是null的话就是默认是显示的。
或者利用$("#div").is(':visible'),看结果是true还是false来判断也可以。
第3个回答  2016-04-18
你好,具体代码如下:
var temp= $("#test").is(":hidden");//是否隐藏
var temp1= $("#test").is(":visible");//是否可见本回答被提问者采纳