原生JS实现N级菜单的代码

前端之家收集整理的这篇文章主要介绍了原生JS实现N级菜单的代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

需求分析

简单的分析一下,要实现N级菜单,首先从布局入手,即判断是否有下级菜单

1.没有下一级菜单,直接排列

2.有下级菜单,又分为下级菜单排放位置,和在上级菜单显示类似 '>' 的符号,效果如图:

图:1

初步实现

1.实现是否存在 >

注意: 下面凡是担忧 xxx===yyy ? xxx : xxx都是利用三元表达式,来表达思路。

HTML结构如下:

图:2

•要实现图一的效果,我们只需要判断li标签里面的children.length===2 ? 'span存在' : 'span移除'

2.下级菜单出现位置

HTML结构如下:

•实现这一需求,也需要判断children.length===2 ? '上级菜单相对定位,top为0,left为上级的offsetWidth,下级菜单绝对定位' : '不做任何处理'

具体代码即实现

效果图如下:

代码如下:

<Meta charset="UTF-8"> Document
Box">

以上所述是小编给大家介绍的原生JS实现N级菜单代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

猜你在找的JavaScript相关文章