方式一 :设置 visibility属性
style="visibility: none;"
visiblity:visible ;---->可见
visiblity:hidden ; ---->隐藏
或者:
style="visibility: none;"
document.getElementById("id").style.visibility="hidden";//隐藏
document.getElementById("id").style.visibility="visible";//显示
这种方法div是隐藏的但是还占据空间,只是说看到的是空白。
方式二:设置display属性(常用)
style="display: none;"
display:none ;---->隐藏
display:" " ; --->显示(不设置display属性即是有可以看见)
或display:"block"; --->也可以看见
或者:
style="display: none;"
document.getElementById("id").style.display="none";//隐藏
document.getElementById("id").style.display="";//显示
这种方法将 display 属性设为 none 确保元素不可见并且连盒模型也不生成,div隐藏后是不占据空间的。
方式三:用js事件
1.onmouseover和onmouseout事件,可用在鼠标指针移到或离开元素时触发函数
onmouseover 用户鼠标移入元素时触发的事件。并执行onmouseover调用的函数。
onmouseout 用户鼠标移开元素时触发的事件。并执行onmouseout调用的函数。
注意:W3C在mouseover和mouseout事件中添加了relatedTarget属性 :
•在mouseover事件中,它表示鼠标来自哪个元素
•在mouseout事件中,它指向鼠标去往的那个元素
而Microsoft在mouseover和mouseout事件中添加了两个属性 :
•fromElement,在mouseover事件中表示鼠标来自哪个元素
•toElement,在mouseout事件中指向鼠标去往的那个元素
js实现div的隐藏显示:
<script type="text/javascript">
show=function(li){
var a=li.getElementsByTagName("div")[0];
a.style.display="block";
}
hide=function(li){
var a=li.getElementsByTagName("div")[0];
a.style.display="none";
}
</script>
<ul class="menu">
<li onmouseover="show(this)" onmouseout="hide(this)"><a href="#">中国大陆</a>
<div id="div">
<ul class="ul">
<li><a href="#">全球</a></li>
<li><a href="#">中国</a></li>
<li><a href="#">澳门</a></li>
<li><a href="#">日本</a></li>
<li><a href="#">美国</a></li>
<li><a href="#">加拿大</a></li>
<li><a href="#">马来西亚</a></li>
<li><a href="#">新西兰</a></li>
<li><a href="#">新加坡</a></li>
<li><a href="#">韩国</a></li>
<li><a href="#">台湾</a></li>
<li><a href="#">澳大利亚</a></li>
</ul></div>
</li>
<li><a href="#"><span style="color: orangered;">亲,请登录</span></a></li>
<li><a href="#">免费注册</a></li>
<li><a href="#">手机逛淘宝</a></li>
</ul>
淘宝导航栏代码:
<html>
<head>
<meta charset="utf-8" />
<title>淘!我喜欢</title>
<link rel="stylesheet" type="text/css" href="css/iconfont.css">
<link rel="stylesheet" type="text/css" href="css/iconfont1.css">
<link rel="stylesheet" type="text/css" href="css/icon.css">
<style type="text/css">
nav{
width: 100%;
height:40px;
border: none;
font-size: 14px;
background-color: #f5f5f5;
font-size: smaller;
}
*{
margin: 0px;
padding: 0px;
}
.menu
{
text-align:left;
width: 500px;
height: auto;
margin-left: 80PX;
float: left;
list-style-type: none;
display: block;
}
.menu >li{
position:relative;
line-height:30px;
color:black;
float:left;
text-align:left;
cursor:pointer;
display:inline;
margin-left: 20px;
}
li ul{
list-style-type: none;
left:0;
top:0;
float: left;
display:block;
}
#div{
width: 350px;height: 200px;
border: 1px solid gainsboro;
float: left;
overflow-x: hidden;
overflow-y: scroll;
text-align: left;
position: absolute;
background-color: white;
display:none;
}
#div2{
position: absolute;
width: 100px;
height: auto;
border: 1px solid #DCDCDC;
background-color:white;
display: none;
margin-top: 10px;
margin: 0px 0px;
}
.ul{
list-style-type: none;
width: 80px;
text-align: left;
float: left;
display:block;
}
.div>li{
float: left;
width: auto;
height: 5px;
color: black;
}
a{
text-decoration : none;
color: black;
}
a:hover{color: orangered;}
</style>
</head>
<body>
<nav>
<ul class="menu">
<li onmouseover="show(this)" onmouseout="hide(this)"><a href="#">中国大陆</a>
<div id="div">
<ul class="ul">
<li><a href="#">全球</a></li>
<li><a href="#">中国</a></li>
<li><a href="#">澳门</a></li>
<li><a href="#">日本</a></li>
<li><a href="#">美国</a></li>
<li><a href="#">加拿大</a></li>
<li><a href="#">马来西亚</a></li>
<li><a href="#">新西兰</a></li>
<li><a href="#">新加坡</a></li>
<li><a href="#">韩国</a></li>
<li><a href="#">台湾</a></li>
<li><a href="#">澳大利亚</a></li>
</ul></div>
</li>
<li><a href="#"><span style="color: orangered;">亲,请登录</span></a></li>
<li><a href="#">免费注册</a></li>
<li><a href="#">手机逛淘宝</a></li>
</ul>
<ul style="width: 800px;padding-left: 50px;" class="menu">
<li onmouseover="show(this)" onmouseout="hide(this)"><a href="#">我的淘宝</a><i class="iconfont icon-jiantou"></i>
<div id="div2">
<ul class="ul">
<a href="#"><li>已买到的宝贝</li></a>
<a href="#"><li>我的足迹</li></a>
</ul>
</div>
</li>
<li><a href="#"><i class="iconfont icon-gouwuche "></i>购物车</a><i class="iconfont icon-jiantou"></i></li>
<li onmouseover="show(this)" onmouseout="hide(this)"><a href="#"><i class="iconfont icon-shoucang"></i>收藏夹</a><i class="iconfont icon-jiantou"></i>
<div id="div2">
<ul class="ul" style="text-align: center;">
<a href="#"><li>收藏的宝贝</li></a>
<a href="#"><li>收藏的店铺</li></a>
</ul>
</div>
</li>
<li><a href="#">商品分类</a><i class="iconfont icon-shuxian"></i></li>
<li onmouseover="show(this)" onmouseout="hide(this)"><a href="#">买家中心</a><i class="iconfont icon-jiantou"></i>
<div id="div2">
<ul class="ul">
<a href="#"><li>免费开店</li></a>
<a href="#"><li>已卖出的宝贝</li></a>
<a href="#"><li>出售中的宝贝</li></a>
<a href="#"><li>卖家服务市场</li></a>
<a href="#"><li>卖家培训中心</li></a>
<a href="#"><li>体检中心</li></a>
<a href="#"><li>问商友</li></a>
</ul>
</div>
</li>
<li onmouseover="show(this)" onmouseout="hide(this)"><a href="#">联系客服</a><i class="iconfont icon-jiantou"></i>
<div id="div2">
<ul class="ul" style="text-align: center;">
<a href="#"><li>消费者客服</li></a>
<a href="#"><li>卖家客服</li></a>
</ul>
</div>
</li>
<li id="fff"><a href="#"><i class="iconfont icon-daohang"></i>网站导航</a><i class="iconfont icon-jiantou"></i></li>
</ul>
</nav>
<script type="text/javascript">
show=function(li){
var a=li.getElementsByTagName("div")[0];
a.style.display="block";
}
hide=function(li){
var a=li.getElementsByTagName("div")[0];
a.style.display="none";
}
</script>
</body>
</html>
效果图:
image.png
image.png
网友评论