Показать сообщение отдельно
  #4 (permalink)  
Старый 02.11.2023, 11:03
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,703

Сообщение от roland
нужно заменить на "auxclick".
В Сафари не будет работать
Значит mouseup на box ловить нужно. И отменять контекстное меню на нем
<head>
<style>
.box2 {
	position: relative;
	background-color: yellow;
	width: 400px;
	height: 200px;	
}
.box {
	position: relative;
	background-color: red;
	width: 200px;
	height: 100px;	
	margin: 30px auto;
}
</style>
</head>
<body>
<div class=box2>
box2
<div class=box>
box<br>
Click
</div>
</div>
<script>
const box = document.querySelector('.box');
const box2 = document.querySelector('.box2');

document.body.addEventListener('click', (event) => {
	console.log('body left click');
})


box2.addEventListener('click', (event) => {
	console.log('box2 left click');
})
/*
box2.addEventListener('mouseup', (event) => {
	console.log('box2 mouse up');
})
*/

box.addEventListener('mouseup', (event) => {
	if (event.button === 2) {
		event.preventDefault();
		console.log('box right click');
	}
})

box.addEventListener('contextmenu', (event) => {
	event.preventDefault();
})

</script>


Надо пересматривать такие интерфейсы. Не принято в WEB кликать правой клавишей. Это для контекстного меню. И реализовать для тачскринов будет проблематично.

Последний раз редактировалось voraa, 02.11.2023 в 11:32.
Ответить с цитированием