<!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"> body{ font-size:100%; font-family:"Microsoft YaHei","Arial"; background:#fff;} #nav{ position:relative; width:832px; _width:835px; margin:100px auto 0 auto; border-bottom:2px #ddd solid;} #nav .nav-menu{ height:50px;} #nav .nav-menu a{ display:block; float:left; height:50px; padding:0 40px; line-height:50px; color:#666; font-size:16px; text-decoration:none;} #nav .nav-current{ position:absolute; bottom:-2px; height:2px; overflow:hidden; background:#80b600;} </style> <script type="text/javascript" src="http://www.webskys.com/skin/tomato/js/jquery.js"></script> <script type="text/javascript"> $(function(){ var cur_width=$(".current").innerWidth();//當前a的寬度 var cur_left=$(".current").position().left;//當前a的左位置 $(".nav-current").css({width:cur_width,left:cur_left})//當前的底部線 $("#nav").find("a").hover( function(){ $(".nav-current").stop().animate( {left: $(this).position().left, width: $(this).innerWidth },300); } , function() { $(".nav-current").stop().animate({ width:cur_width,left:cur_left } , 300); } ) }) </script> </head> <body> <div id="nav"> <div class="nav-menu"> <a href="#">首頁</a> <a href="#" class="current">瞭解咱們</a> <a href="#">產品展現</a> <a href="#">服務報價</a> <a href="#">最新消息</a> <a href="#">聯繫方式</a> </div> <div class="nav-current"></div> </div> </body> </html>
初始效果圖javascript
當鼠標放到a上時,綠色的線會動畫移動到該a下css
知識點:html
hover(over,out)一個模仿懸停事件(鼠標移動到一個對象上面及移出這個對象)的方法。這是一個自定義的方法,它爲頻繁使用的任務提供了一種「保持在其中」的狀態。
java
當鼠標移動到一個匹配的元素上面時,會觸發指定的第一個函數。當鼠標移出這個元素時,會觸發指定的第二個函數。並且,會伴隨着對鼠標是否仍然處 在特定元素中的檢測(例如,處在div中的圖像),若是是,則會繼續保持「懸停」狀態,而不觸發移出事件(修正了使用mouseout事件的一個常見錯 誤)。
jquery
參數 :
over (Function) : 鼠標移到元素上要觸發的函數
out (Function): 鼠標移出元素要觸發的函數web
示例 :
鼠標懸停的表格加上特定的類函數
jQuery 代碼: 動畫
$("td").hover( function () { $(this).addClass("hover"); }, function () { $(this).removeClass("hover"); } );