用JS写一个网站树形菜单
先上效果图:

主体内容就是侧边展示的一二三级菜单,树形结构的。
前端页面布局内容,页面内容简单用ul li 来完成所有的罗列项。用先后顺序来区分一级二级三级:
<body>
<b><img src="data:images/fold.gif">树形菜单:</b>
<ul><a href="javascript:onclick=show('art') "><img src="data:images/fclose.gif">文学艺术</a></ul>
<ul id="art" class="no_circle" style="display: block;">
<li><img src="data:images/doc.gif">先锋写作</li>
<li> <img src="data:images/doc.gif">小说散文</li>
<li><img src="data:images/doc.gif">诗风词韵</li>
</ul>
<ul><a href="javascript:onclick=show('photo') "><img src="data:images/fclose.gif">贴图专区</a></ul>
<ul id="photo" class="no_circle" style="display: block;">
<li><img src="data:images/doc.gif">真我风采</li>
<li> <img src="data:images/doc.gif">视频贴图</li>
<li><img src="data:images/doc.gif">行行摄摄</li>
<li><img src="data:images/doc.gif">Flash贴图</li>
</ul>
<ul><a href="javascript:onclick=show('home') "><img src="data:images/fclose.gif">房产论坛</a></ul>
<ul id="home" class="no_circle" style="display: block;">
<li><img src="data:images/doc.gif">我要买房</li>
<li> <img src="data:images/doc.gif">楼市话题</li>
<li><img src="data:images/doc.gif">我要卖房</li>
<li><img src="data:images/doc.gif">租房心语</li>
<li><img src="data:images/doc.gif">二手市场</li>
</ul>
<ul><a href="javascript:onclick=show('game') "><img src="data:images/fclose.gif">娱乐八卦</a></ul>
<ul id="game" class="no_circle" style="display: block;">
<li><img src="data:images/doc.gif">红楼一梦</li>
<li> <img src="data:images/doc.gif">笑话论坛</li>
<li><img src="data:images/doc.gif">休闲生活</li>
<li><img src="data:images/doc.gif">大话春秋</li>
</ul>
</body>
CSS样式很简单,根据个人喜好设置:
<style type="text/css">
body{font-size:13px;
line-height:20px;
}
a{font-size: 13px;
color: #000000;
text-decoration: none;
}
a:hover{font-size:13px;
color: #ff0000;
}
img {
vertical-align: middle;
border:0;
}
.no_circle{list-style:none;
display:none;
}
</style>
JS内容我们用原生的JS很简单就写出来了,用show方法,获取到我们点击的块级元素的ID,给它添加display的样式,用if else语句来判断状态显示:
<script type="text/javascript">
function show(d1){
if(document.getElementById(d1).style.display=='block'){
document.getElementById(d1).style.display='none'; //触动的层如果处于显示状态,即隐藏
}
else{
document.getElementById(d1).style.display='block'; //触动的层如果处于隐藏状态,即显示
}
}
</script>
这样就完成树形菜单的编辑了。

用JS写一个网站树形菜单的更多相关文章
- 前端与编译原理——用JS写一个JS解释器
说起编译原理,印象往往只停留在本科时那些枯燥的课程和晦涩的概念.作为前端开发者,编译原理似乎离我们很远,对它的理解很可能仅仅局限于"抽象语法树(AST)".但这仅仅是个开头而已.编 ...
- 分享:计算机图形学期末作业!!利用WebGL的第三方库three.js写一个简单的网页版“我的世界小游戏”
这几天一直在忙着期末考试,所以一直没有更新我的博客,今天刚把我的期末作业完成了,心情澎湃,所以晚上不管怎么样,我也要写一篇博客纪念一下我上课都没有听,还是通过强大的度娘完成了我的作业的经历.(当然作业 ...
- 写一个带文本菜单的程序,菜单项如下 (1) 取五个数的和 (2) 取五个数的平均值 (X) 退出。
问题: 写一个带文本菜单的程序,菜单项如下(1) 取五个数的和 (2) 取五个数的平均值(X) 退出. 由用户做一个选择, 然后执行相应的功能.当用户选择退出时程序结束. 实现: ...
- JS写一个简单日历
JS写一个日历,配合jQuery操作DOM <!DOCTYPE html> <html> <head> <meta charset="UTF-8&q ...
- 如何使用 js 写一个正常人看不懂的无聊代码
如何使用 js 写一个正常人看不懂的无聊代码 代码质量, 代码可读性, 代码可维护性, clean code WAT js WTF https://www.destroyallsoftware.com ...
- 用原生js写一个"多动症"的简历
用原生js写一个"多动症"的简历 预览地址源码地址 最近在知乎上看到@方应杭用vue写了一个会动的简历,觉得挺好玩的,研究一下其实现思路,决定试试用原生js来实现. 会动的简历实现 ...
- Vue.js 递归组件实现树形菜单
最近看了 Vue.js 的递归组件,实现了一个最基本的树形菜单. 项目结构: main.js 作为入口,很简单: import Vue from 'vue' Vue.config.debug = tr ...
- 记录下使用iis7代理node.js写的网站程序
昨天晚上一个学弟的紧急求救,说了自己接的单子做了一个网站,使用了自己熟悉的技术——node.js+mongdb,但当看到部署环境惊呆了,是 windows+sqlserver.这些都不是关键,关键是服 ...
- 【Part1】用JS写一个Blog(node + vue + mongoDB)
学习JS也有一段时间了,准备试着写一个博客项目,前后端分离开发,后端用node只提供数据接口,前端用vue-cli脚手架搭建,路由也由前端控制,数据异步交互用vue的一个插件vue-resourse来 ...
随机推荐
- 自动重启 supervisor
在开发或调试Node.js应用程序的时候,当你修改js文件后,总是要按下CTRL+C终止程序,然后再重新启动,即使是修改一点小小的参数,也总是要不断地重复这几个很烦人的操作.有没有办法做到当文件修改之 ...
- php 微信小程序支付
php 微信小程序支付 直接贴代码: 前端测试按钮wxml: <view class="container"> <text class="name&qu ...
- 1 CSS简介&语法&选择器及优先级&背景&文本&字体&链接&列表&表格
什么是CSS? Cascading Style Sheets层叠样式表,样式定义如何显示HTML元素 样式通常存储于样式表中,外部样式表通常存储在CSS文件中 多个样式定义可层叠为1,样式对网页中元素 ...
- 查看mysql进程
show processlist; show full processlist;
- 《Java Spring框架》Spring IOC 源码分析
1.下载源码 源码部署:https://www.cnblogs.com/jssj/p/11631881.html 并不强求,最好是有源码(方便理解和查问题). 2. 创建子项目 Spring项目中创建 ...
- DuiLib中FlashDemo的例子经验杂粹1
转载:https://www.jianshu.com/p/3e958ae9e5ab 最近用duilib做个东西,经常卡壳 ,而且以前学的现在又忘.现在觉得应该好好做笔记,以前老是觉得博客是很郑重的东西 ...
- R语言 sample抽样函数
Sample 函数用法: sample(x, size, replace = FALSE, prob = NULL) Arguments x - 可以是含有一个或多个元素的向量或只是一个正整数.x的长 ...
- 简析ThreadLocal原理及应用
简析ThreadLocal原理及应用 原创: 东晨雨 JAVA万维猿圈 4月17日 ThreadLocal的源码加上注释不超过八百行,源码结构清晰,代码也比较简洁.ThreadLocal可以说是Jav ...
- MySQL 之与Python相关
一.python 操作mysql import pymysql ''' # 1.基本语法 # (1) 连接数据库 # conn = pymysql.connect(host = "ip地址& ...
- Java学习第一周心得体会
一周的学习很快就过去了,说说我个人的总结吧! 下面几个是我觉得需要牢牢记住的 1.Java的执行机制:先编译.再解释 2.变量以及基本数据类型 3.强类型编程语言:要求变量的类型与值的类型要一致 4. ...