富有弹性碰撞缓冲的竖向JS导航菜单

<!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>富有弹性碰撞缓冲的竖向JS导航菜单丨河北品牌策划公司|聚来宝太平洋团队</title>
    <style type="text/css">
    * { padding: 0; margin: 0; }
    li { list-style: none; }
    body { background: #fff; }
    ul { width: 202px; margin: 40px auto 0; position: relative; }
    li { width: 200px; height: 30px; line-height: 30px; padding-left: 10px; border: 1px solid #ccc; border-left: 3px solid #666; font-size: 14px; color: #333; margin-bottom: 5px; position: relative; z-index: 2; }
    a { color: #333; text-decoration: none; }
    .active { font-weight: bold; background: #fff0f0; }
    #bar { width: 10px; padding-left: 0; background: #cc6699; border: 1px solid #cc6699; position: absolute; top: 0; left: -14px; z-index: 3; }
    </style>
    <script>
    var obj = null;
    var aLis = null;
    var oBar = null;
    var iTime = null;
    var iSpeed = 0;
    var iAcc = 3;
    var onOff = 0;
    var iPrev = 0;
    var iNext = 0;
    function goTime()
    {
    for(var i = 0; i < aLis.length; i+=1)
    {
    if(aLis[i] === this)
    {
    var iTarget = (aLis[0].offsetHeight + 5) * i;
    iNext = i;
    onOff = iNext - iPrev;
    if(iTime)
    {
    clearInterval(iTime);
    }
    if(onOff>=0)
    {
    iTime = setInterval("elasticity("+ iTarget +")",35);
    }
    else
    {
    iTime = setInterval("postpone("+ iTarget +")",35);
    }
    iPrev = iNext;
    }
    aLis[i].className="";
    this.className="active";
    }
    }
    function elasticity(target)
    {
    var top = oBar.offsetTop;
    iSpeed+=iAcc;
    top += iSpeed;
    if(top >= target)
    {
    iSpeed*=-0.7;
    if(Math.abs(iSpeed)<=iAcc)
    {
    clearInterval(iTime);
    iTime=null;
    }
    top=target;
    }
    oBar.style.top = top + "px";
    }
    function postpone(target)
    {
    if(oBar.offsetTop===target)
    {
    clearInterval(iTime);
    iTime=null;
    }
    else
    {
    iSpeed = (target - oBar.offsetTop)/4;
    oBar.style.top = oBar.offsetTop + iSpeed + "px";
    }
    }
    window.onload = function(){
    obj = document.getElementById("nav");
    aLis = obj.getElementsByTagName("li");
    oBar = document.getElementById("bar");
    for(var i = 0; i < aLis.length; i+=1)
    {
    if(aLis[i].id!="bar")
    {
    aLis[i].onmouseover = goTime;
    }
    }
    };
    </script>
    </head>
    <body>
    <ul id="nav">
    <li class="active"></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 id="bar"></li>
    </ul>
    </body>
    </html>
    <br><br><hr>
时间: 2024-11-15 12:12:54

富有弹性碰撞缓冲的竖向JS导航菜单的相关文章

竖向二级导航菜单特效的实现

竖向二级导航菜单特效的实现:在网页设计中,导航菜单的应用非常频繁,横向二级导航菜单的应用可能会多一些,垂直导航菜单可能稍稍少一些,当然这是相对而言的,竖向二级导航菜单的使用也是非常的频繁的,下面就简单介绍一下如何实现此功能,咱们这里只是介绍如何实现,关于美化方面不是重点,先看一段代码实例: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="a

jQuery如何实现竖向二级导航菜单

jQuery如何实现竖向二级导航菜单:二级导航菜单在网页设计中数不胜数,有横向导航菜单,也有竖向导航菜单.在个人的印象中,好像介绍实现横向导航的教程比较多,所以在这里咱们就单独介绍一下如何使用jQuery实现竖向导航菜单,这里只介绍如何实现此种功能,对于效果的美观度,可以自行修改设计.下面简单介绍一下如何实现此效果:静态代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> &

20款jquery下拉导航菜单特效代码分享

jquery仿京东商城左侧分类导航下拉菜单代码 jQuery企业网站下拉导航菜单代码 jQuery css3黑色的多级导航菜单下拉列表代码 jquery响应式导航菜单支持手机导航菜单代码 jquery鼠标导航下滑显示图片列表效果 jQuery个性动画二级下拉导航代码 jquery网站下拉菜单制作企业网站导航菜单代码 jQuery游戏网站顶部滑动导航菜单代码 jquery.superfish.js导航菜单插件制作网页无限级下拉菜单代码 jquery hover事件实用的企业网站二级导航菜单样式 j

JS+CSS带弹性碰撞指示的竖向导航菜单

<!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> <title>JS+CSS带弹性碰撞指示的竖向导航菜单丨

实用js+css多级树形展开效果导航菜单

<!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-Typ

js+css实现带缓冲效果右键弹出菜单

<!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-Typ

JS下滑菜单,向下滑出二级导航

<!DOCTYPE html><html><head><title>石家庄渣浆泵</title><style type="text/css">ul#sidemenu, ul#sidemenu ul{list-style-type: none;margin: 0;padding: 0;width: 185px;}ul#sidemenu a{display: block;text-decoration: none;}u

js实现当前导航菜单高亮显示

为了增加用户体验度,增加网页的易用性和美观度,往往需要把当前导航菜单以特殊方式显示,通常是高亮显示或有不同于其它菜单的背景,有两种方法可以实现,第一种是用纯css来实现,二是用js辅助css来实现,两个种方法都比较简单,相对而言js更简单些,下面介绍用js来实现的方法: 首页假设我们的导航代码是这样写的: <div id="navi"><ul><li><a href="1.html">主页</a></

IBM官网的JS+CSS的导航菜单效果

<!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-