我有一个包含< 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;
}
也可以单击下拉按钮的确切位置,然后您应应用基本数学运算以将菜单置于其下方.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。