成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導航首頁 ? 技術教程 ? jQuery實現背景滑動菜單
全站頭部文字 我要出現在這里
jQuery實現背景滑動菜單 659 2024-02-10   

話不多說,直接附上源碼,僅供大家參考

<div class="menu">
 <ul id="menu">
 <li><a >JavaScript</a></li>
 <li value="1"><a >Graphic Design</a></li>
 <li><a >HTML</a></li>
 <li><a >User Interface</a></li>
 <li><a >CSS</a></li>
 </ul>
 <div id="slide"></div>
</div>
* {margin:0; padding:0}
body {font:14px Helvetica, sans-serif; font-weight:bold; background:#FFF}
.menu {position:relative; background:url(images/bg.gif) no-repeat; height:35px; width:459px}
.menu ul {list-style:none; z-index:10; position:absolute; z-index:100; padding:9px 5px}
.menu li {float:left}
.menu a, .menu a:active, .menu a:visited, .menu a:hover {text-decoration:none; color:#FFF; padding:10px}
#slide {position:absolute; top:6px; height:24px; background:#89957a; z-index:10;}
(function($){
 $.fn.extend({
 bgslide:function(value){
 //可選參數
 value=$.extend({
 "fw":12,
 "sw":2,
 "ftime":100,
 "stime":300
 },value);
 //初始化背景的位置
 var liw = $("ul li:eq(0)",value.menu).width();//獲取第一個li的寬
 var $slide = $(this).children("div"); 
 $slide.css({"width":liw,"left":"5"});
 //懸停時執行動畫
 function hani(w,l){
 $slide.stop(true) //很關鍵的一句話,當懸停時,讓正在執行的動畫,和列隊中的動畫,都取消;防止鼠標不停滑動時的bug;
 .animate({"width":w,"left":l+value.fw},value.ftime)
 .animate({"left":l-value.fw},value.stime)
 .animate({"left":l+value.sw},value.stime)
 .animate({"left":l-value.sw},value.stime);
 } 
 //離開時執行動畫 
 function oani(){
 $slide.stop(true)
 .animate({"width":liw,"left":"5"},value.ftime)
 .animate({"left":l-value.fw},value.stime)
 .animate({"left":l+value.sw},value.stime)
 .animate({"left":l-value.sw},value.stime);; 
 }
 $("ul li",this).hover(function(){
 var w = $(this).width(); //獲取當前li的寬
 var l = $(this).position().left; //獲取當前li的橫坐標 
 if(!$(this).index()==0){ //鼠標懸停在第一個LI時,不發生動畫
 hani(w,l);
 }
 },function(){
 oani();
 });
 } 
 })
})(jQuery);

html結構思路:

  div:放置一個背景圖層,相對定位;

  UL:放置菜單內容,絕對定位;

  div:放置滑動的背景層,絕對定位;

JQuery思路分析:

  鼠標懸停到每一個LI的時候,讓這個滑動的背景層,通過水平移動動畫,來定位到當前這個LI的地方;并有一個左右晃動效果;鼠標離開時,讓背景層滑動到初始位置;

鼠標懸停時:

  1.獲取當前LI相對于最外層DIV的水平坐標,即橫坐標值;

  2.讓滑動的背景層的橫坐標正好等于當前LI的橫坐標;

  3.執行一個左右晃動的動畫,即改變當前水平坐標的值;

鼠標離開時:

  1.讓背景層滑動到初始位置,即改變橫坐標的值,為初始值;

下載Demo地址:http://xiazai.gimoo.net/yuanma/myslidebgmenu(gimoo.net).rar

以上就是本文的全部內容,希望對大家有所幫助,謝謝對綠夏網的支持!



主站蜘蛛池模板: 体方法师| 我爱发明鬼畜视频| 风间由美的电影| 陈建斌梅婷新剧《不惑之旅》| 赛虎| 战犬出击电影完整版免费观看| 彭丹三级裸奶视频| 都市频道在线直播观看| 地下车库设计规范| bo妞| 黄婉伶| 被告山杠爷| 云上的宝石| 女生被艹在线观看| 纳米核心第二季| 一个国家的诞生| 砌体工程质量验收规范gb50203---2011| 孙东杓| 《幸福花园动漫双男主》| 三大| 电影《donselya》在线观看| 爱 死亡和机器人| 合肥一中最后一卷| 车震电影| 刘一秒攻心销售| 妈妈的朋友电影日本| 毒灰| 巴霍巴利王2国语版在线观看免费| 系统解剖学题库及答案| 同志电影网站| 6套电影频道节目表| 暗潮危机电影完整版在线观看| 春光外泄| 宇辉| 追捕电视剧免费观看完整版| 黄海冰主演电视剧大全| 单招考试查询成绩入口| 香港之夜在线观看免费版香港电影| 我们的高清免费视频观看| 女子阴道| 张勇手演过的电影|

!!!站長長期在線接!!!

網站、小程序:定制開發/二次開發/仿制開發等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103