亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

js實現(xiàn)的動畫導(dǎo)航菜單效果代碼

 更新時間:2015年09月10日 09:19:33   作者:企鵝  
這篇文章主要介紹了js實現(xiàn)的動畫導(dǎo)航菜單效果代碼,涉及JavaScript通過鼠標(biāo)事件控制頁面元素樣式動態(tài)變換的技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了js實現(xiàn)的動畫導(dǎo)航菜單效果代碼。分享給大家供大家參考。具體如下:

這是一款簡單的動畫導(dǎo)航菜單效果,每個菜單項的下邊有一個橫線會隨著鼠標(biāo)的對應(yīng)而自動滑動,指明當(dāng)前菜單的位置。

運行效果截圖如下:

在線演示地址如下:

http://demo.jb51.net/js/2015/js-animate-nav-menu-style-codes/

<!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>動畫導(dǎo)航菜單</title>
<style type="text/css">
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote{margin:0; padding:0;}
body { font:12px "\5B8B\4F53",san-serif; color:#808080; padding-top:6px; }
a { text-decoration:none; color:#808080 }
a:hover { text-decoration:underline; color:#ba2636 }
ul, li { list-style:none; }
#nav{ padding:41px 0 0 0; height:27px;width:542px; overflow:hidden; float:right; margin-right:17px;position:relative ;}
#nav ul{ height:27px; width:100%; background: url(i/naVbotBdr.gif) repeat-x 0 100%; }
#nav ul li{ width:67px; height:24px; float:left; padding-right:28px; display:inline; cursor:pointer; overflow:hidden}
#nav a{background:#999;width:100%; height:24px; display:block; float:left; outline:none; color:#fff; line-height:24px; text-align:center; font-size:16px; font-weight:bold; overflow:hidden}
#navCur{ position:absolute; left:0; bottom:0; height:3px; color:#F00; width:67px; margin:0; padding:0; display: block; float:none; background:#FF0000; cursor:pointer; overflow:hidden}
</style>
</head>
<body>
  <div id="nav">
  <ul class="cf">
  <li><a href="" hidefocus="true">1</a></li>
  <li><a href="1" hidefocus="true">2</a></li>
  <li class="cur"><a href="2" hidefocus="true">3</a></li>
  <li><a href="3" hidefocus="true">4</a></li>
  <li><a href="4" hidefocus="true">5</a></li>
  <li><a href="5" hidefocus="true">6</a></li>
 </ul>
  <span id="navCur"></span>
 </div>
<script type="text/javascript">
(function(){
 var curPostion,thisLeft, curPostion_1;
 var obj = getId('nav').getElementsByTagName('ul')[0], timer = null ,navCur = getId('navCur'),x,liArr = getId('nav').getElementsByTagName('li'),liLength = liArr.length-1;
 for (var x=0;x<liArr.length; x++ ){
  liArr[liLength].style.paddingRight = "0";
  var li = liArr[x],curPostion = navCur.offsetLeft;
  if(li.className == "cur"){ 
   navCur.style.left = li.offsetLeft + "px";
  }
  li.onmouseover=function(){
   clearTimeout(timer);
   thisLeft = this.offsetLeft;
   if (thisLeft > navCur.offsetLeft)
   {
    hover();
   }
   else
   {
    curPostion_1 = this.offsetLeft;
    out();
   }
  };
  li.onmouseout=function(){
   clearTimeout(timer);
   if (curPostion < navCur.offsetLeft)
   {
    curPostion_1 = curPostion;
    out();
   }
   else
   {
    thisLeft = curPostion;
    hover();
   }
  };
 }
 function hover(){
  if (navCur.offsetLeft <= thisLeft)
  {
   var a = Math.max(parseInt((thisLeft - navCur.offsetLeft) / 15), 3);
   navCur.style.left = navCur.offsetLeft + a + "px";
   timer = setTimeout(arguments.callee, 5);
  }
  else
  {
   navCur.style.left = thisLeft + "px";
   clearTimeout(timer);
  }
 }
 function out(){
  if (navCur.offsetLeft >= curPostion_1)
  {
   var a = Math.max(parseInt((navCur.offsetLeft - curPostion_1) / 15), 3);
   navCur.style.left = navCur.offsetLeft - a + "px";
   timer = setTimeout(arguments.callee, 5);
  }
  else
  {
   navCur.style.left = curPostion_1 + "px";
   clearTimeout(timer);
  }
 }
 function getId(id){
  return document.getElementById(id)
 }
})();
</script>
</body>
</html>

希望本文所述對大家的JavaScript程序設(shè)計有所幫助。

相關(guān)文章

  • javascript抖動元素的小例子

    javascript抖動元素的小例子

    這篇文章介紹了javascript抖動元素的小例子,有需要的朋友可以參考一下
    2013-10-10
  • 基于dataset的使用和圖片延時加載的實現(xiàn)方法

    基于dataset的使用和圖片延時加載的實現(xiàn)方法

    下面小編就為大家分享一篇基于dataset的使用和圖片延時加載的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • 基于JavaScript實現(xiàn)報警器提示音效果

    基于JavaScript實現(xiàn)報警器提示音效果

    這篇文章給大家分享分享一段代碼基于JavaScript實現(xiàn)報警器提示音效果,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-10-10
  • 頁面中body onload 和 window.onload 沖突的問題的解決

    頁面中body onload 和 window.onload 沖突的問題的解決

    關(guān)于頁面中body onload 和 window.onload 沖突的問題的解決
    2009-07-07
  • 使用微信小程序API,調(diào)用微信的各種內(nèi)置能力。

    使用微信小程序API,調(diào)用微信的各種內(nèi)置能力。

    微信小程序如何使用小程序API,去調(diào)用微信提供的各種內(nèi)置能力(即微信API)。小程序開發(fā)框架提供豐富的微信原生API,可以方便的調(diào)起微信提供的能力,如獲取用戶信息,本地存儲,支付功能等。
    2022-12-12
  • 小程序?qū)崿F(xiàn)分頁查詢列表的模板

    小程序?qū)崿F(xiàn)分頁查詢列表的模板

    這篇文章主要為大家詳細(xì)介紹了小程序?qū)崿F(xiàn)分頁查詢列表的模板,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • javascript原型鏈繼承用法實例分析

    javascript原型鏈繼承用法實例分析

    這篇文章主要介紹了javascript原型鏈繼承用法,實例分析了javascript原型鏈繼承中的技巧與相關(guān)注意事項,非常具有實用價值,需要的朋友可以參考下
    2015-01-01
  • 瀏覽器復(fù)制插件zeroclipboard使用指南

    瀏覽器復(fù)制插件zeroclipboard使用指南

    ZeroClipboard 是國外大神開發(fā)的一個用于剪貼板復(fù)制的 JS 插件,它是基于 Flash 來實現(xiàn)跨瀏覽器的復(fù)制功能的。當(dāng)我們使用 ZeroClipboard 的時候,它會悄悄隱藏一個小小的 Flash 影片(swf),不會對我們的用戶界面造成影響。我們只需要借助它實現(xiàn)復(fù)制功能就行了。
    2016-03-03
  • JavaScript使用setTimeout實現(xiàn)延遲彈出警告框的方法

    JavaScript使用setTimeout實現(xiàn)延遲彈出警告框的方法

    這篇文章主要介紹了JavaScript使用setTimeout實現(xiàn)延遲彈出警告框的方法,實例分析了javascript中setTimeout函數(shù)的使用技巧,非常具有實用價值,需要的朋友可以參考下
    2015-04-04
  • JavaScript的9個陷阱及評點分析

    JavaScript的9個陷阱及評點分析

    以下是JavaScript容易犯錯的九個陷阱。雖然不是什么很高深的技術(shù)問題,但注意一下,會使您的編程輕松些,即所謂make life easier. 筆者對某些陷阱會混雜一些評點。
    2008-05-05

最新評論