为什么在鼠标滑动的时候,onmouseout没有生效。。。。。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
*{
margin: 0;
padding: 0;
list-style: none;
font-size: 14px;
color: gray;
}
.clearfix:after,.clearfix:before{
content: "";
height: 0;
display: block;
visibility: hidden;
}
.clearfix:after{
clear: both;
}
.nav{
overflow: hidden;
width: 600px;
height: 200px;
margin: 1em auto;
padding-left: 50px;
}
.classA{
position: relative;
float: left;
border-bottom: 4px solid #ff5d00;
}
.classA .title{
background-color: #efefef;
}
.classA .title li{
padding: 10px 10px;
margin: 0 10px;
cursor: pointer;
}
.classB{
position: absolute;
height: 0px;
overflow: hidden;
background-color: #ddd;
z-index: -1;
}
.classB li{
width: 103px;
height: 40px;
line-height: 40px;
text-align: center;
box-sizing:border-box;
}
</style>
<script>

function addLoadEvent (func){
var oldload = window.onload;
if(typeof oldload != "function"){
window.onload = func;
}else{
window.onload = function(){
oldload();
func();
}
}
}

addLoadEvent(secondClass);
function secondClass (){
var title = document.getElementsByClassName("title");
var classB = document.getElementsByClassName("classB")
var elemtimer = null;
for(var i=0,i_len=title.length;i<i_len;i++){
title[i].index = i;
//鼠标滑过的时候
title[i].onmouseover = function(){
clearInterval(elemtimer);
var elem = classB[this.index];
// clearInterval(elemtimer);
elemtimer = setInterval(function(){
var dist = Math.ceil((160-elem.offsetHeight)/5);
elem.style.height = elem.offsetHeight+dist+"px";
if(elem.offsetHeight>=160){
clearInterval(elemtimer);
}
},20)
}
//鼠标移出的时候
title[i].onmouseout = function(){
document.title = this.index;
clearInterval(elemtimer);
var elem = classB[this.index];
// clearInterval(elemtimer);
elemtimer = setInterval(function(){
var dist = Math.ceil((elem.offsetHeight)/5);
elem.style.height = elem.offsetHeight-dist+"px";
if(elem.offsetHeight<=0){
clearInterval(elemtimer);
}
},20)
}
}
}
</script>
</head>
<body>
<ul class="nav clearfix">
<li>
<ul>
<li>一级菜单0</li>
</ul>
<ul>
<li>二级菜单0-0</li>
<li>二级菜单0-1</li>
<li>二级菜单0-2</li>
<li>二级菜单0-3</li>
</ul>
</li>
<li>
<ul>
<li>一级菜单1</li>
</ul>
<ul>
<li>二级菜单1-0</li>
<li>二级菜单1-1</li>
<li>二级菜单1-2</li>
<li>二级菜单1-3</li>
</ul>
</li>
<li>
<ul>
<li>一级菜单2</li>
</ul>
<ul>
<li>二级菜单2-0</li>
<li>二级菜单2-1</li>
<li>二级菜单2-2</li>
<li>二级菜单2-3</li>
</ul>
</li>
<li>
<ul>
<li>一级菜单3</li>
</ul>
<ul>
<li>二级菜单3-0</li>
<li>二级菜单3-1</li>
<li>二级菜单3-2</li>
<li>二级菜单3-3</li>
</ul>
</li>
<li>
<ul>
<li>一级菜单4</li>
</ul>
<ul>
<li>二级菜单4-0</li>
<li>二级菜单4-1</li>
<li>二级菜单4-2</li>
<li>二级菜单4-3</li>
</ul>
</li>
</ul>
</body>
</html>


尽吾志者
浏览 1565回答 2
2回答

_寒影

首先好像并没有看见你的标签里面有引入.title之类的类,其次document.getElementsByClassName("title")返回的是集合对象,你应该用document.getElementsByClassName("title")[0]这样的方法来得到你想要的那个对象。

Lyong

你想要什么功能?
打开App,查看更多内容
随时随地看视频慕课网APP