JS+CSS实现类似QQ好友及黑名单效果的树型菜单_javascript技巧
本文实例讲述了JS+CSS实现类似QQ好友及黑名单效果的树型菜单。分享给大家供大家参考。具体如下:
今天介绍的这个菜单堪称极品啊,不过里面的有些图标丢失了,路径还留在那,真想使用的朋友自己制作两个折叠菜单的图标按路径传上去就行了,这个菜单是模仿QQ面板的菜单功能,很多朋友还是很喜欢这种功能的,没想到用这么少的JS代码也可实现 ,值得代签哦。
运行效果截图如下:
在线演示地址如下:
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程序设计有所帮助。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

在网页中使用本地安装的字体文件最近,我从网上下载了一种免费字体,并成功将其安装到了我的系统中。现在...

在元素个数不固定的情况下如何通过CSS选择第一个指定类名的子元素在处理HTML结构时,常常会遇到元素个数不�...

如何通过CSS让多行文本两端对齐并添加下划线?在日常的网页设计中,我们常常需要对多行文本进行特殊的样式...

如何调整el-table中合并行的悬停样式和逻辑?在使用Element...

H5页面需要持续维护,这是因为代码漏洞、浏览器兼容性、性能优化、安全更新和用户体验提升等因素。有效维护的方法包括建立完善的测试体系、使用版本控制工具、定期监控页面性能、收集用户反馈和制定维护计划。

关于React中使用react-transition-group实现组件切换转场效果的问题在使用React开发项目时,我们常常需要实现一些流�...

探讨两个inline-block元素错位显示的原因在前端开发中,我们经常会遇到元素排版的问题,特别是当使用inline-block...
