为什么一直变宽

来源:5-2 编程练习

田马达加斯加

2019-01-15 19:21

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>导航菜单</title>

<style type="text/css">

* { margin: 0; padding: 0; font-size: 14px; }

a { color: #333; text-decoration: none }

ul { list-style: none; height: 30px; border-bottom: 5px solid #F60; margin-top: 20px; padding-left: 50px; }

ul li { float: left }

ul li a { display: block; height: 30px; text-align: center; line-height: 30px; width:120px; background: #efefef; margin-left: 1px; }

a.on, a:hover { background: #F60; color: #fff; }

</style>

<script>

window.onload=function(){

    var aA=document.getElementsByTagName('a');

for(var i=0; i<aA.length; i++){

aA[i].onmouseover=function(){

var This=this;

    clearInterval(this.time);

This.time=setInterval(function(){

This.style.width=This.offsetWidth+8+"px";

if(This.time>=160)

clearInterval(This.time);

},30)

}

aA[i].onmouseout=function(){

var This=this;

clearInterval(this.time);

This.time=setInterval(function(){

This.style.width=This.offsetWidth-8+"px";

if(This.offsetWidth<=120){

This.style.width='120px';

clearInterval(This.time);

}

},30)

}

}

}

</script>

</head>

<body>

<ul>

    <li><a class="on" href="#">首  页</a></li>

    <li><a href="#">新闻快讯</a></li>

<li><a href="#">产品展示</a></li>

    <li><a href="#">售后服务</a></li>

    <li><a href="#">联系我们</a></li>

</ul>

</body>

</html>


写回答 关注

1回答

  • qq_绿蓝假灯_0
    2019-01-16 19:42:03

    This.style.width=This.offsetWidth+8+"px";

    if(This.time>=160)

    改为    ↓

    This.style.width=This.offsetWidth+8+"px";

    if(This.offsetWidth>=160)

导航条菜单的制作

水平、垂直、圆角导航条菜单,让您的技术探索之路更高效

123836 学习 · 838 问题

查看课程