Для веб-сайта я хочу показать пользовательское контекстное меню, когда пользователь "нажимает" на экран. Я создал слушатель jQuery Longclick в своем коде, чтобы показать пользовательское контекстное меню. Отображается контекстное меню, но также отображается контекстное меню iPad по умолчанию! Я попытался предотвратить это, добавив функцию preventDefault()
к событию в моем прослушивателе, но это не работает:
function showContextMenu(e){
e.preventDefault();
// code to show custom context menu
}
$("#myId").click(500, showContextMenu);
Вопросы
- Можете ли вы запретить показывать контекстное меню iPad по умолчанию?
- Можно ли это сделать с помощью плагина jQuery Longclick?
Плагин Longclick имеет некоторую специфическую обработку для iPad (исходя из этого фрагмента исходного кода):
if (!(/iphone|ipad|ipod/i).test(navigator.userAgent)){
$(this)
.bind(_mousedown_, schedule)
.bind([_mousemove_, _mouseup_, _mouseout_, _contextmenu_].join(' '), annul)
.bind(_click_, click)
}
Поэтому я предполагаю, что это отвечает на мой второй вопрос (при условии, что плагин использовал правильное событие).