0

我想在某些情况下停用我的插件的所有顶级context-menu项目(例如,当用户禁用插件时)。
不知何故,除了完全销毁该物品外,我无法弄清楚这是如何完成的;但我更喜欢使用一种可以在停用和激活之间轻松切换的方法。
必须有某种方法可以解决缺少删除或停用方法的问题。对于不在顶层但属于子菜单的项目,这很addItem()容易removeItem()通过parentMenu.


编辑:
顶层的项目确实具有该属性parentMenu-null尽管如此。所以问题似乎是 context-menu.js 只为子菜单提供 removeItem/addItem 方法,但不为顶级项目的 parentNode 提供。


我仍然觉得context-menu-api 有点令人困惑。该项目没有 onClick 方法。在我看来,我需要为每个项目创建一个内容脚本,而不是(?)
另外,我还没有找到一种方法将项目放置在我想要的顶层(而不是被迫放在底部)。

4

1 回答 1

1

Upcoming changes in the SDK's context-menu module due to ship at the end of the month should allow you to use addItem()/removeItem(). This re-written implementation of the context-menu module will ship in SDK 1.13. Currently there is no way to 'deactivate' an item programmatically until this new version is available.

于 2013-01-02T23:47:05.353 回答