jQuery實現(xiàn)可收縮展開的級聯(lián)菜單實例代碼
如果用純JavaScript代碼而不使用框架的話,那么做一個級聯(lián)菜單也許是一件讓人生畏的事情,但有了框架,這件事情就很容易了,這就是框架的好處,極大地提高了開發(fā)效率,并且更可靠和易于維護。使用jQuery來實現(xiàn)級聯(lián)菜單的一般步驟如下:
•1.首先使用<ul>和<li>創(chuàng)建一個級聯(lián)菜單
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>itcast.cn的JQuery應(yīng)用示例:彈出菜單</title>
<link type="text/css" rel="stylesheet" href="css/menu.css" mce_href="css/menu.css" />
<mce:script type="text/javascript" src="jslib/jquery.js" mce_src="jslib/jquery.js"></mce:script>
<mce:script type="text/javascript" src="jslib/jquerymenu.js" mce_src="jslib/jquerymenu.js"></mce:script>
</head>
<body>
<ul>
<a href="#" mce_href="#">我是菜單1</a>
<li><a href="#" mce_href="#">我是子菜單1</a></li>
<li><a href="#" mce_href="#">我是子菜單2</a></li>
</ul>
<ul>
<a href="#" mce_href="#">我是菜單2</a>
<li><a href="#" mce_href="#">我是子菜單3</a></li>
<li><a href="#" mce_href="#">我是子菜單4</a></li>
</ul>
</body>
</html>
•2.編寫JavaScript代碼,控制級聯(lián)菜單的收縮
//需要點擊主菜單的按鈕時,對應(yīng)的子菜單可以顯示,再次點擊子菜單則隱藏
//需要編寫代碼,在頁面裝載時,給所有的主菜單添加onclick的事件
//保證主菜單點擊時可以顯示或隱藏子菜單
//注冊頁面裝載時執(zhí)行的方法
$(document).ready(function() {
//這里需要首先找到所有的主菜單
//然后給所有的主菜單注冊點擊事件
//找到ul中的節(jié)點
var as = $("ul > a");
as.click(function() {
//這里需要找到當(dāng)前ul中的li,然后讓li顯示出來
//獲取當(dāng)前被點擊的a節(jié)點
var aNode = $(this);
//找到當(dāng)前a節(jié)點的所有l(wèi)i兄弟字節(jié)點
var lis = aNode.nextAll("li");
//讓子節(jié)點顯示或隱藏
lis.toggle("show");
});
});
•創(chuàng)建css文件,來控制標(biāo)簽的顯示效果
/*如何讓所有的li都不顯示小圓點,可以使用css的標(biāo)簽選擇器*/
li {
list-style: none; /*使li前面的小圓點消失*/
margin-left: 18px; /*讓子菜單向右移動一段距離,達到縮進的效果*/
display: none; /*讓所有的子菜單都先隱藏*/
}
a{
text-decoration: none; /*讓鏈接的下劃線消失*/
}
jQuery帶來的方便:
1.在找被點擊的菜單時,僅需要一個$(this)就可以實現(xiàn)
2.節(jié)點的顯示與隱藏,只用一條語句:toggle()就可以,并且還可以在數(shù)組上實現(xiàn)所有節(jié)點都具有這種功能。
3.找到某個標(biāo)簽下所有的某種標(biāo)簽:$("ul > a")
相關(guān)文章
用JavaScript腳本實現(xiàn)Web頁面信息交互
這篇文章主要介紹了用JavaScript腳本實現(xiàn)Web頁面信息交互2006-10-10JS使用replace()方法和正則表達式進行字符串的搜索與替換實例
這篇文章主要介紹了JS使用replace()方法和正則表達式進行字符串的搜索與替換實例,需要的朋友可以參考下2014-04-04JS實現(xiàn)禁止高頻率連續(xù)點擊的方法【基于ES6語法】
這篇文章主要介紹了JS實現(xiàn)禁止高頻率連續(xù)點擊的方法,通過事件監(jiān)聽結(jié)合定時器實現(xiàn)針對高頻率點擊的限制操作,該功能基于ES6語法實現(xiàn),需要的朋友可以參考下2017-04-04javascript ready和load事件的區(qū)別示例介紹
ready是在DOM加載完成就觸發(fā);load是在加載完所有頁面內(nèi)容才會觸發(fā),下為大家簡要介紹下,不知道的朋友可以參考下2013-08-08