JavaScript自界说多级联动浮动菜单[一]
猛火网教程 相同的多级浮动菜单网上大概多实例,但大部门都是只针对一种环境或不足机动,简朴说就是做死了的。以是我就想到做一个可以或许自界说菜单的,有更多成果的多级浮动菜单。而个中的要害就是怎么按照自界说的菜单布局来天生新菜单,要害中的难点就是怎么获得下级菜单布局和容器工具的行使。 抱负的做法是每次有下级菜单时,从工具直接取得下级菜单布局,放到容器工具中,而且容器能重用,而不是每次都从头天生。但想了好久也想不到得当的做法,直到做了多级联动下拉菜单终于获得了灵感。放弃了直接取得下级菜单布局,而是每次都从原本的菜单布局中获取当前必要的下级菜单布局。容器工具也不是自动天生,而是由用户先界说好(其后也做到能自动天生了)。 先来看一下演示:
放下了这些肩负后,后头的开拓就顺畅了。 特点: 措施道理 措施是按照传统浮动菜单扩展而来,这里说一下几个较量要害或有效的处所: 【延时成果】 这个许多人都懂,就是设个setTimeout计时器,这里有两个计时器,别离是容器计时器和菜单计时器。容器计时器的浸染是鼠标移到容器表面时潜匿容器,难点是怎样判定当前鼠标是不是在容器表面。一样平常的要领是设个bool参数,mouseout时设为false,mouseover时设为true(or倒过来),再按照这个参数判定,但这个要领在这个不可,颠末容器里的菜单工具时会触发容器mouseout,因为变乱冒泡,菜单工具的mouseout也会触发容器的mouseout。
这里保举一个要领,行使contains(ff是compareDocumentPosition)要领。
具体参考仿LightBox内容表现结果,而菜单计时器就没什么出格,就是用来配置菜单内容。
(编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |