Как закрыть jQuery contextMenu? - PullRequest
1 голос
/ 21 июля 2011

Я использую плагин jquery contextMenu , и у меня возникла небольшая проблема, которую я пытаюсь решить.

В настоящее время, когда я щелкаю по своему пункту меню «удалить», вызываемая функция запрашивает у пользователя окно подтверждения от функции deleteTests. На этом этапе contextMenu все еще виден и окно подтверждения.

В идеале я хотел бы закрыть contextMenu, как только пользователь выберет пункт меню, а затем перейти к функции удаления.

Кажется, это должно быть тривиально, но я не могу заставить его работать.

$(document).ready(function(){
    $.contextMenu({selector: '#context-menu', items: {
    "delete": {name: "Delete", icon: "delete", callback: menu_click },
    sep1: "---------",
    quit: {name: "Quit", icon: "quit", callback: $.noop}
}});

function menu_click(key, opt) {
    if (key == "delete") {
    // Need to close menu here
        deleteTests();
    }
}
});

Ответы [ 2 ]

6 голосов
/ 14 октября 2016

Вы можете попытаться вызвать contextmenu:hide

$('.context-menu-list').trigger('contextmenu:hide')
0 голосов
/ 21 июля 2011

Ты прав.Это должно быть тривиально, но автор не предоставил эту функцию.

Вы можете посмотреть на источник и скопировать все, что сделал автор, когда обнаружены щелчки за пределами меню, но это взлом.


Вам повезло;Я сделал то же самое с этим плагином.

Следующее будет делать, но помните, что это хак :

$('.contextMenu').hide();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...