Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Правая кнопка мышки (https://javascript.ru/forum/events/74226-pravaya-knopka-myshki.html)

chellas88 23.06.2018 14:45

Правая кнопка мышки
 
Всем привет. Помогите с таким вопросом:
Есть куча дивов с уникальными id
<div id="1">ТЕкст1</div>
<div id="2">ТЕкст2</div>

Нужно написать обработчик, который при нажатии правой кнопкой мышки на одном из этих дивов будет получать id дива на котором он будет нажат

рони 23.06.2018 14:50

chellas88,
https://learn.javascript.ru/mouse-clicks

chellas88 23.06.2018 15:00

Цитата:

Сообщение от рони (Сообщение 488122)

я читал. у меня консоль пишет что contextmenu не является функцией

рони 23.06.2018 15:13

chellas88,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>

  <script>
document.addEventListener('DOMContentLoaded', function() {
[].forEach.call(document.querySelectorAll('div'), function(node) {
   node.addEventListener("mousedown", function(event) {
   if(event.which == 3) {
   event.preventDefault();
   alert(node.id);
   }
})

});
});

  </script>
</head>

<body>

<div id="1">ТЕкст1</div>


<div id="2">ТЕкст2</div>

</body>
</html>

chellas88 23.06.2018 15:21

Цитата:

Сообщение от рони (Сообщение 488124)
chellas88,
<!DOCTYPE html>


  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>

  <script>
document.addEventListener('DOMContentLoaded', function() {
[].forEach.call(document.querySelectorAll('div'), function(node) {
   node.addEventListener("mousedown", function(event) {
   if(event.which == 3) {
   event.preventDefault();
   alert(node.id);
   }
})

});
});

  </script>

спасибо

chellas88 23.06.2018 15:42

Помогите еще вот с чем

function showmenu(){
	$('.del_menu').fadeIn('slow');
	
};
  
document.addEventListener('DOMContentLoaded', function() {
	[].forEach.call(document.querySelectorAll('.search_lotus_item'), function(node) {
		node.addEventListener("mousedown", function(event) {
			if(event.which == 3) {
				var num = node.id;
				event.preventDefault();
				showmenu();
				
			}
		})

	});

});

При нажатии показывается блок но и стандартное контекстное меню тоже. Как запретить стандартное меню?
А также хотелось бы чтоб блок появлялся возле курсора

рони 23.06.2018 17:20

Цитата:

Сообщение от chellas88
mousedown

замените на
contextmenu


Часовой пояс GMT +3, время: 17:52.