【问题标题】:jQueryUI menu hidejQueryUI 菜单隐藏
【发布时间】:2012-11-08 07:55:47
【问题描述】:

我使用 UL 元素创建了一个菜单,我正在使用 jQueryUI 来显示这个菜单。

<ul style="display:none" id="action_menu" class="menu">
    <li><a href="javascript:alert(213112);">Edit Translation</a></li>
    <li><a href="javascript:void(0);">Edit Comment</a></li>
    <li><a href="javascript:void(0);">Edit Bind</a></li>
    <li><a href="javascript:void(0);">Edit Reuse</a></li>
    <li><a href="javascript:void(0);">Edit Sync Up</a></li>
    <li><a href="javascript:void(0);">Export</a></li>
    <li><a href="javascript:void(0);">Show History</a></li>
    <li><a href="javascript:void(0);">Upload Screenshot</a></li>
</ul>

当一个按钮被点击时,$("#action_menu").menu() 可以显示这个菜单。 我知道如何显示这个菜单,现在我不知道当鼠标点击其他地方而不是点击菜单时如何隐藏这个菜单。我找了很多例子,他们添加了文档点击监听器,并检查事件目标的父节点是否是这个菜单。像这个链接Hide dropdown menu jQuery 有没有人有更好的主意,我想知道为什么 jQueryUI 不为菜单小部件添加事件或选项。谁能帮帮我,谢谢

【问题讨论】:

    标签: jquery jquery-ui jquery-ui-menu


    【解决方案1】:

    这是一个通用的解决方案,我不知道你的插件

    $(document).click(function (e)
    {
        var container = $(".menu");
    
        if (container.has(e.target).length === 0)
        {
            container.hide();
        }
    });
    

    【讨论】:

    • 我在某处读过这种解决方案,看起来 Jquery UI 没有考虑文档点击菜单隐藏,我必须像这样解决这个问题。谢谢你,Arun Killu
    • 我也遇到了同样的问题。当我实施此解决方案时,单击打开菜单的按钮不再执行任何操作。有什么解决办法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-09
    • 1970-01-01
    • 2012-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多