oncontextmenu, click по элементу и вне его

212
22 мая 2018, 14:50

сижу и думаю, то ли я что то упускаю то ли что происходит. есть тестовый параграф

на нем висит событие на click также на document висит событие click почему то при клике на параграф срабатывает событие не параграфа а документа. почему???

window.onload = function() { 
 
  document.addEventListener('contextmenu', preventDefault); 
 
  let paragraph = document.getElementById("test"); 
  paragraph.addEventListener("click", showMessage); 
  document.addEventListener("click", strangeThing); 
}; 
// срабатываем только при правом клике, при левом срабатывает strangeThing() 
function showMessage(e) { 
  e.stopPropagation(); 
  console.log("клик на параграфе"); 
} 
// срабатывает и при левом и при правом клике 
function strangeThing(e) { 
  e.preventDefault(); 
  // срабатывает при клике и левой и правой кнопкой вне параграфа 
  // при клике на параграф правой или левой кнопкой тоже срабатывает. ШТА? 
  console.log(e.button, ' клик вне параграфа'); 
} 
 
 
function preventDefault(e) { 
  e.preventDefault(); 
  console.log("мешаю показать стандартное контекстное меню"); 
}
<div contextmenu="mymenu"> Some text 
 
</div>

READ ALSO
Как реализовать передвижение в игре canvas?

Как реализовать передвижение в игре canvas?

Есть canvas,имеющий размеры 800x600px

255
Перевод в мировые координаты

Перевод в мировые координаты

Есть координаты мыши: mousePos , есть матрица view - view, есть матрица перспективной проекции: pMatrixЯ перевожу координаты в мировые: нахожу обратную...

238
Найти сумму всех четных и сумму нечетных элементов массива

Найти сумму всех четных и сумму нечетных элементов массива

Начал изучать javaПолучил такое задание "Найти сумму всех четных и сумму нечетных элементов массива"

302