JS+CSS實現(xiàn)類似QQ好友及黑名單效果的樹型菜單
本文實例講述了JS+CSS實現(xiàn)類似QQ好友及黑名單效果的樹型菜單。分享給大家供大家參考。具體如下:
今天介紹的這個菜單堪稱極品啊,不過里面的有些圖標丟失了,路徑還留在那,真想使用的朋友自己制作兩個折疊菜單的圖標按路徑傳上去就行了,這個菜單是模仿QQ面板的菜單功能,很多朋友還是很喜歡這種功能的,沒想到用這么少的JS代碼也可實現(xiàn) ,值得代簽哦。
運行效果截圖如下:
在線演示地址如下:
http://demo.jb51.net/js/2015/js-css-qq-hy-hmd-style-menu-codes/
具體代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE>QQ好友/黑名單的樹型菜單</TITLE> </HEAD> <BODY> <script> if (!document.getElementById) document.getElementById = function() { return null; } function initializeMenu(menuId, actuatorId) { var menu = document.getElementById(menuId); var actuator = document.getElementById(actuatorId); if (menu == null || actuator == null) return; actuator.parentNode.style.backgroundImage = "url()"; actuator.onclick = function() { var display = menu.style.display; this.parentNode.style.backgroundImage = (display == "block") ? "url()" : "url()"; menu.style.display = (display == "block") ? "none" : "block"; return false; } } window.onload = function() { initializeMenu("productsMenu", "productsActuator"); initializeMenu("newPhonesMenu", "newPhonesActuator"); initializeMenu("compareMenu", "compareActuator"); } </script> <style> body { font-family: verdana, helvetica, arial, sans-serif; } #mainMenu { background-color: #EEE; border: 1px solid #CCC; color: #000; width: 203px; } #menuList { margin: 0px; padding: 10px 0px 10px 15px; } li.menubar { background: url() no-repeat 0em 0.3em; font-size: 12px; line-height: 1.5em; list-style: none outside; } .menu, .submenu { display: none; margin-left: 15px; padding: 0px; } .menu li, .submenu li { background: url() no-repeat 0em 0.3em; list-style: none outside; } a.actuator { background-color: transparent; color: #000; font-size: 12px; padding-left: 15px; text-decoration: none; } a.actuator:hover { text-decoration: underline; } .menu li a, .submenu li a { background-color: transparent; color: #000; font-size: 12px; padding-left: 15px; text-decoration: none; } .menu li a:hover, submenu li a:hover { text-decoration: underline; } span.key { text-decoration: underline; } </style> </head> <body> <div id="mainMenu"> <ul id="menuList"> <li class="menubar"> <a href="#" id="productsActuator" class="actuator">圖秀地帶收藏夾</a> <ul id="productsMenu" class="menu"> <li> <a href="#" id="newPhonesActuator" class="actuator">我的好友</a> <ul id="newPhonesMenu" class="submenu"> <li><a href="#">張三[10000001]</a></li> <li><a href="#">李四[10000002]</a></li> <li><a href="#">張三[10000001]</a></li> <li><a href="#">李四[10000002]</a></li> </ul> </li> <li> <a href="#" id="compareActuator" class="actuator">陌生人</a> <ul id="compareMenu" class="submenu"> <li><a href="#">張三[10000001]</a></li> <li><a href="#">李四[10000002]</a></li> <li><a href="#">張三[10000001]</a></li> <li><a href="#">李四[10000002]</a></li> </ul> </li> </ul> </li> </ul> </div> </body> </BODY> </HTML>
希望本文所述對大家的JavaScript程序設(shè)計有所幫助。
相關(guān)文章
淺談監(jiān)聽單選框radio改變事件(和layui中單選按鈕改變事件)
今天小編就為大家分享一篇淺談監(jiān)聽單選框radio改變事件(和layui中單選按鈕改變事件),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09服務(wù)器端的JavaScript腳本 Node.js 使用入門
觸爪伸向傳說中的Server-Side Javascrpt。后端JS最出名無疑是Ryan Dahl的node.js,另一個是aptana IDE提供商搞出的jaxer,這里討論node.js的使用2012-03-03JavaScript中全選、全不選、反選、無刷新刪除、批量刪除、即點即改入庫(在yii框架中操作)的代碼分享
這篇文章主要介紹了JavaScript中全選、全不選、反選、無刷新刪除、批量刪除、即點即改入庫(在yii框架中操作)的代碼分享,需要的朋友可以參考下2016-11-11簡述JS中forEach()、map()、every()、some()和filter()的用法
JS中常常需要對數(shù)組進行遍歷、迭代操作,而我們常用的就是for語句對數(shù)組進行迭代,下面這篇文章主要給大家介紹了關(guān)于JS中forEach()、map()、every()、some()和filter()的用法,需要的朋友可以參考下2022-05-05