编程语言
首页 > 编程语言> > Javascript下拉菜单小部件

Javascript下拉菜单小部件

作者:互联网

我有一个包含< ul>菜单的菜单.在Web CMS中.
我希望几个菜单项具有显示在下拉列表中的子项.这些子项目也是ul.

使用几行CSS和Javascript基本上很容易做到这一点,但是我正在寻找一种现成的Javascript解决方案,可以帮助我处理以下问题:

>处理屏幕边缘情况:如果下拉菜单的任何部分在当前视口之外,请将其放置在完全位于视口内的位置.

这是从头开始编写代码的bit子.

“很高兴”是:

>居中放置在下拉按钮下方
>向主体添加onclick事件,以便在下拉菜单之外单击将其关闭;之后干净删除onclick事件

但是那些我可以根据需要自己做.

一个不错的,小巧的,小巧的小部件,可以神奇地转换我的< ul>会很可爱.

如果解决方案基于框架,则它必须是Prototype,因为这就是我在CMS中使用的.

解决方法:

您可以获取UL的偏移量,并检查这些偏移量是否在视口的特定距离内.

// Pseudo code
var ul = document.getElementById("menu");
if(ul.offset.x + ul.width > viewport.width) {
    ul.offset.x = viewport.width - ul.width;
}

也可以单击下拉按钮的确切位置,然后您应应用基本数学运算以将菜单置于其下方.

标签:widget,css,javascript,prototypejs
来源: https://codeday.me/bug/20191210/2101473.html