JavaScript: щелчок правой кнопкой Capturing и меню отключения только в определенном элементе

Я кодировал сценарий jQuery, где существует маленькая сетка на экране, и использующий пользователей перетаскивания может поместить мозаики на сетку (снимки на месте). В настоящее время, если бы Вы нависаете над мозаикой, она постепенно появляется опция вращаться, но я очень предпочел бы его, если Вы могли бы щелкнуть правой кнопкой для вращения (создание ее более естественный). Я понимаю, что блокирующийся щелчок правой кнопкой полностью часто осуждается, так задавался вопросом, было ли это возможно только в конкретном элементе, затем получив то событие, делая что-то в JS и отключении контекстного меню? - который работает в каждом браузере.

На ноте стороны в настоящее время я использую jQuery для эффектов и пользовательский JavaScript для перетаскивания, действительно ли стоит посмотреть на плагин jQuery для перетаскивания?

Большое спасибо,

6
задан Pez Cuckow 4 June 2010 в 10:38
поделиться

3 ответа

Для перехвата нажатия правой кнопки мыши можно использовать этот jquery:

$('#gridID').bind('contextmenu', function(e) {
   // do stuff here instead of normal context menu
   return false;
});

Это работает в chrome, firefox и safari. Не тестировал в IE. Работает и в IE. Единственная оговорка - он не работает в Opera. Так что если вы можете с этим смириться...

12
ответ дан 9 December 2019 в 20:40
поделиться

Я не сторонник использования правой кнопки мыши на веб-страницах. Однако, если вы действительно хотите это сделать, вы можете заблокировать правую кнопку мыши, как описано здесь. Вы можете блокировать правую кнопку мыши (другими словами, возвращать false в обработчике событий) условно, если мышь находится над ячейками сетки.

Что касается вашего бонусного вопроса: в jquery ui есть функция drag & drop. Возможно, проще использовать его, чем создавать свой собственный.

0
ответ дан 9 December 2019 в 20:40
поделиться

«стоит ли смотреть на плагин jQuery для перетаскивания?»

Только в том случае, если вы не собираетесь использовать свое приложение в ОС iPhone с safari, то есть включая iPad, см. Safari Web Content Guide: Handling Events

0
ответ дан 9 December 2019 в 20:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: