сижу и думаю, то ли я что то упускаю то ли что происходит. есть тестовый параграф
на нем висит событие на 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>
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники