js中如何判断一个层是不是隐藏

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中如何判断一个层是不是隐藏相关的知识,希望对你有一定的参考价值。

判断的JS语句怎么写,我是想写一个方法,判断一个层是隐藏还是显示,隐藏就显示它,显示就隐藏它,求解

<script type="text/javascript">
//下面的函数判断该层是否被隐藏,是则返回true,否则返回false
//参数为层对象的id
function isHidden (elementid)
var ele = document.getElementById(elementid);
//不等于none则说明未隐藏
if(ele.style.display != "none")
return false;
else
return true;



//下面的函数判断该层是否被隐藏,是则返回true,否则返回false
//参数为层对象
function isHiddenByElement (element)
var ele = element;
//不等于none则说明未隐藏
if(ele.style.display != "none")
return false;
else
return true;



//改变层的状态,
function changeDisplay (elementid)
var ele = document.getElementById(elementid);
if (isHiddenByElement(ele)) //若隐藏则显示之
ele.style.display = "block";
else //否则隐藏它
ele.style.display = "none";


</script>

html代码中只需要对某个事件="changeDisplay(elementid)"即可
参考技术A <script>
function runcode ( name)
var div = document.getElementById(name);
// if (div.style.visibility == "hidden")
// div.style.visibility = "visible";
// else
// div.style.visibility = "hidden";
//

if (div.style.display == "none")
div.style.display = "block";
else
div.style.display = "none";




</script>

<form name=gomail method ="post" >
<body>
<div id=htmlText>ddddddddddd<br>ddddd</div>
<br><br>
<input type=button value="点这里" onclick="runcode('htmlText');">

</body>
</form>本回答被提问者采纳
参考技术B if (div.style.display == "none")
div.style.display = "block";
else
div.style.display = "none";

一般这样就可以了。其实也要看你最先是怎么设置样式的,才好控制,比如可以设置style.height=0;同样做到隐藏的效果。
参考技术C 在jquery中如果想查找一个可见的元素用 :visible
例如$("tr:visible")
如果想找不显示的,可以用
$("tr:not(':visible')")就行了

如果通过display的属性判断的话用
$("finder").css("display")
参考技术D XXXX.style.display = "none";
XXXX是一个层的名称或ID

XXXX.style.display = "bolck";
XXXX是一个层的名称或ID

刚才写了一个 能用
<html>
<head>
<title>ssss</title>
</head>
<SCRIPT language="JavaScript">

function showsubmenu(sid)
var whichEl = document.getElementById("submenu" + sid);
if (whichEl.style.display == "none")
eval("submenu" + sid + ".style.display=\"\";");
else
eval("submenu" + sid + ".style.display=\"none\";");


</SCRIPT>
<body>
<table align=center>
<tr>
<td width="158" height="25" id="menuTitle1" onClick="showsubmenu(1)" >专业管理</td>
</tr>
<tr>
<td style="display:none" id='submenu1'>
<div class=sec_menu style="width:158">
<table cellpadding=0 cellspacing=0 align=center width=130>
<tr>
<td height="20">专业大类管理</td>
</tr>
<tr>
<td height="20">添加专业(单)</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>

怎么用JS隐藏一个DIV层?

<script type="text/javascript">
function fuckie()
document.getElementById("ie-hidden").display = "none";

</script>
自己写的,无效!

设置div对象的style.display属性为"none"即可隐藏该节点,设置属性为”block“可以显示之。实例演示如下:

1、HTML结构

<input type="button" value="隐藏" onclick="fun(this)">
<div id="test">我是一个DIV</div>

2、javascript代码

function fun(obj)
var div = document.getElementById("test");
if(obj.value=="隐藏")
div.style.display = "none";
obj.value = "显示";
 else 
div.style.display = "block";
obj.value = "隐藏";

3、效果演示

参考技术A document.getElementById("ie-hidden").style.display = "none";
你那个没写完整 缺个style
fuckie名字起得不错追问

我style之后Chrome就报错

参考技术B <script type="text/javascript">
$(document).ready(function()
$("#ie-hidden").hide();
);
</script>
直接这样就好了追问

搞定,谢谢!

$(document).ready(function()
$("#ie-hidden").hide();
);

最后高呼一声,泥马万恶的IE!!!!

参考资料:http://www.w3school.com.cn/jquery/jquery_effects.asp

本回答被提问者采纳
参考技术C div的visibility可以控制div的显示和隐藏,但是隐藏后页面显示空白

style="visibility: none;"

document.getElementById("typediv1").style.visibility="hidden";//隐藏

document.getElementById("typediv1").style.visibility="visible";//显示

通过设置display属性可以使div隐藏后释放占用的页面空间,如下

style="display: none;"

document.getElementById("typediv1").style.display="none";//隐藏

document.getElementById("typediv1").style.display="";//显示

此JS代码中,没有用try——Catch捕获错误,代码如下:

<script language="javascript">
//创建一个showhidediv的方法,直接跟ID属性
function showhidediv(id)
var sbtitle=document.getElementById(id);
if(sbtitle)
if(sbtitle.style.display=='block')
sbtitle.style.display='none';
else
sbtitle.style.display='block';



</script>
<div id="show" onMouseMove='showhidediv("msg")';>鼠标移动这里</div><!--这里是点击div,ID要下面的ID-->
<div id="msg" style="display:none;">出现显示的内容</div> <!--这里是MsgDiv-->

onMouseMove='showhidediv("msg")'; 这里是鼠标动作,可以替换成Click或其他!

再次升级,做两个层之间的切换:

<script language="javascript">
//创建一个showhidediv的方法,直接跟ID属性
function showhidediv(id)
var age=document.getElementById("msg_2");
var name=document.getElementById("msg_1");
if (id == 'name')
if (name.style.display=='none')
age.style.display='none';
name.style.display='block';

else
if (age.style.display=='none')
name.style.display='none';
age.style.display='block';



</script>
<div id="show" style="float:left;" onMouseMove='showhidediv("name")';>Name:</div><div id="show" style="float:left;" onMouseMove='showhidediv("age")';>Age:</div>
<div id="msg_1" style="display:none;float:left;">林雨林</div>
<div id="msg_2" style="display:none;float:left;">18</div>
参考技术D 你没有调用<script type="text/javascript">
function fuckie()
document.getElementById("ie-hidden").display = "none";

fuckie();
</script>追问

我改用jQuery了,加上调用还是不行:

function fuckie()
$(document).ready(function()
$("#ie-hidden").css("display","none");
);
fuckie();

追答

xuliang5535 他回答的是对的

以上是关于js中如何判断一个层是不是隐藏的主要内容,如果未能解决你的问题,请参考以下文章

js判断来源页面如果不是本站域名则隐藏某DIV

如何判断一个元素是不是在可视区域内

怎么用JS隐藏一个DIV层?

(如何)我可以判断我的表单字段是不是隐藏在 Django 模板中

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

如何监听dom元素的显示隐藏事件