禁用jQuery Contextmenu的项目

时间:2011-10-27 16:13:50

标签: javascript jquery contextmenu

首先,感谢我之前提出的问题的所有帮助。好吧,我的问题涉及jQuery contextmenus。我有一个完美显示所有不同选项的上下文菜单,但是,我需要禁用一些选项(让我们在下面的代码中说项目B )并且我没有这样做。这是代码的方式,

我有一个名为menuitems的数组,它包含contextmenu的所有元素,例如,

function createMenuItems() {
    var menuitems = {};
    menuitems['Item A'] = {
        click: function() {
            // Some Code
        }
    };
    menuitems['Item B'] = {
        click: function() {
            // Some Code
        }
    };
    menuitems['Item C'] = {
        click: function() {
            // Some Code
        }
    };

    return menuitems;
}

以下列方式调用此函数,

menuitems = createMenuItems();

现在使用以下命令

创建上下文菜单
element.children("a").contextMenu("myMenu",menuitems,
    {
        disable_native_context_menu: true
    });

任何帮助都将受到高度赞赏,非常感谢并期待您的专业意见

亲切的问候

1 个答案:

答案 0 :(得分:0)

看起来你正在使用 http://code.google.com/p/youpivot/source/browse/trunk/chromeextension/include/jquery.contextmenu.js?r=46

据我可以从源代码判断,不支持“禁用”。您可以尝试自己添加,例如:

menuitems['Item B'] = {
    click: function() {
        // Some Code
    },
    disabled: true
};

然后在插件文件中添加:

if (item_options.disabled)
    menuItem.attr("disabled", "disabled");

在链接提供的源代码中的第39行之后(我假设您的文件可能与此不同,因此您可以找到类似的位置)。

希望这有帮助。