【问题标题】:jquery UI simple context menu, callable from buttonjquery UI 简单上下文菜单,可从按钮调用
【发布时间】:2011-09-05 22:29:40
【问题描述】:

我正在寻找一些插件或聪明的编程技术的组合,它可以让我在 jQuery 中拥有一个上下文样式的菜单,而不是真正通过右键单击来触发它,我希望能够让它从一个按钮触发,该按钮可能会移动到我窗口上的不同位置。我可以轻松处理按钮本身移动的部分。我的要求是:

  • 它应该与 jQuery UI 1.8 和我的自定义 themeroller 生成的主题兼容
  • 它需要可重定位
  • 我需要让它在选择一个元素时执行回调,或者让它遵循构成菜单元素的任何 a 标记上的 href

我查看了Selectmenu,它很接近,但它似乎总是想显示当前选择的项目,这不是我想要的。此外,我不得不以一种丑陋的方式绕过它以使其正确重新定位。

This blog post 也非常接近,但是 jsEvent.clientX 和 jsEvent.clientY 没有将对话框放在正确的位置,我有点不知道该怎么做。此外,我真的不希望选项是按钮。菜单式的插件让它们看起来不错。

This plugin here 几乎正是我想要的(我必须添加一些关于按钮的内容,但看起来并不难)。但这需要 jQuery UI 1.9。

有什么想法吗?这可能是一个非常罕见的要求,我必须自己推出,但不知何故,这似乎令人惊讶,我觉得我可能会遗漏一些东西。

【问题讨论】:

    标签: javascript jquery jquery-ui


    【解决方案1】:

    我喜欢这个插件。它似乎比 jQueryUI-contextmenu 更兼容。 实际上是 jQueryUI-contextmenu 的一个分支 jQuery-contextMenu

    我喜欢它,因为它有更多示例,并且它说只在内存中使用一个足迹,因此与其他相比它消耗的资源更少。与 +jquery 1.6 一起工作,不一定需要 html 标记,

    【讨论】:

      【解决方案2】:

      您最后提到的The menu plugin 似乎可以在 jQuery UI 1.8.x 上正常工作,但不能在 jQuery UI 1.7.x 上工作。

      【讨论】:

      • 我看到了那个插件,但它的 API 似乎与 here 记录的内容不一致 - 请参阅 jsfiddle.net/xxGUW/4 并且它似乎也没有“在不同位置打开弹出窗口”触发时”我需要的功能。
      • 嗯,最后,我能够让 1.8 中的“隐藏”菜单插件或多或少地满足我的目的。既然这是这个答案所建议的,我会接受它。基本上我的错误是试图在 DOM 中移动它,而只需要一个明智的 position() 应用程序。
      • 请随时用您的最终解决方案更新我的答案,以便其他用户受益。
      猜你喜欢
      • 2013-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-04
      • 1970-01-01
      • 2016-07-14
      • 1970-01-01
      • 2015-01-27
      相关资源
      最近更新 更多