Создание во всплывающем меню события щелчка правой кнопкой мыши (контекстного меню) для документа, работающего не так, как ожидалось
Я пытаюсь прослушать событие щелчка правой кнопкой мыши на документе, для которого необходимо создать всплывающее меню (goog.ui.popupmenu). В самый первый раз меню создается по правому клику, но после этого оно создается даже по левому клику.
Я попытался отсоединить объект от элемента при первом получении события. Но это не похоже на работу.
Вот что я делаю:
goog.events.listen(element, goog.events.EventType.CONTEXTMENU, function(e) {
e.preventDefault();
this.menu();
}, true, this);
Я тестирую этот код на Chrome.
1 ответ
Ваш код работает нормально для меня (по крайней мере, часть, которую вы поделились). Он реагирует на первый и каждый щелчок правой кнопкой мыши и никогда не реагирует на щелчок левой кнопкой мыши.
Но вы можете заставить элемент реагировать на правый клик, предоставляя true
как opt_contextMenu
параметр attach
метод, такой как это:
popupMenu.attach(element, goog.positioning.Corner.TOP_LEFT, goog.positioning.Corner.BOTTOM_LEFT, true);