JQuery菜單效果實例詳解

最終要達到的效果是如圖所示:

JQuery菜單效果實例詳解

當單擊菜單項的時候,可以實現菜單的摺疊與展開,這是我們在網頁上經常看到的一個效果。在這裏的實現主要應用是CSS控制樣式然後配合jquery實現。

自己的感想:這裏比如說綁定要跳轉的頁面,只是靜態的綁定,不能動態的綁定,我在開發過程中用到的動態綁定是結合的treeview控件實現的。不知道大家還有沒有更好的辦法。

前臺頁面代碼:

<%@ page="" language="C#" autoeventwireup="true" codefile="" inherits="menu">

這次我們要實現的是下面的效果,當鼠標滑動到菜單項的時候,子菜單顯示;當鼠標移開的時候,菜單收起。在這裏,我們還解決了在滑動門會有的問題,就是當鼠標快速滑動的時候,會不停地觸發,這個問題。頁面的代碼如下:

菜單項1

子菜單11

子菜單12

菜單項2

子菜單21

子菜單22

菜單項3

子菜單31

子菜單32

菜單項1

子菜單11

子菜單12

菜單項2

子菜單21

子菜單22

菜單項3

子菜單31

子菜單32

CSS()ul,li { list-style-type:none; /*如果不加margin在搜狗瀏覽器中不能左對齊*/ margin:0px; padding:0px; } ,n { background-image: url("../images/title.gif"); background-repeat:repeat-x; width:100px; } a,n a { background-image:url("../images/collapsed.gif"); background-repeat:no-repeat; background-position:3px center; text-decoration:none; color:White; /*下面是用來保證鼠標只要停留在li上就可以響應,也就相當於讓li的.響應區域擴充了*/ display:block; padding-left:20px; padding-bottom:3px; } li { background-color:#EEEEEE; } li a,n li a { color:Black; background-image:none; } ul,n ul { display:none; } /*橫向菜單的樣式*/ n { float:left; } //

$(document)y(function () { var main = $(">a"); k(function () { var ulNode = $(this)("ul"); // if (("display") == "none") { // ("display", "block"); // } // else { // ("display", "none"); // } //百葉窗的效果 eToggle("normal"); }); //現在的這個變量用來解決鼠標快速滑動問題clearInterval(setTimeoutId); dren("ul")eUp(); var setTimeoutId; $("n")r(function () { var nodeLi = $(this); setTimeoutId = imeout(function () { dren("ul")eDown(); }, 300) }, //上面的函數是鼠標進入的操作,下面的操作是鼠標移出的操作。 function () { //開始的時候,我在這裏犯了一個錯誤,應該重新定義一下nodeLi var nodeLi = $(this); clearTimeout(setTimeoutId); if (dren("ul")th != 0) { dren("ul")eUp(); }; }); }); 以上兩種菜單效果,大家有沒有掌握,希望這篇文章可以幫助到大家。