ettaluni
@ettaluni
ERROR MEME

JS сделать mousedown с задержкой, потом click, так чтобы сработал css __item:active?

Доброго дня! Пытаюсь сделать симуляцию нажатия клавиши но получаться пока только отработать функции то по клику идет, а нужно еще и анимку. Вот что я пытался:
function triggerMouseEvent(targetNode, eventType) {
	let clickEvent = document.createEvent('MouseEvents');
	clickEvent.initEvent(eventType, true, true);
	targetNode.dispatchEvent(clickEvent);
}
let boardNode = document.getElementById(boardColor);
if (boardNode) {
triggerMouseEvent (boardNode, "mouseover");
triggerMouseEvent (boardNode, "mousedown");
await setTimeout(() => {
	triggerMouseEvent (boardNode, "mouseup");
	triggerMouseEvent (boardNode, "click");
}, 1500);


Клик работает, не работает css mousedown - анимка.
  • Вопрос задан
  • 99 просмотров
Пригласить эксперта
Ответы на вопрос 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Псевдокласс не навесить программно, но можно все его правила дать и ещё обычному классу, который и вешать на элемент.
__item:active,  __item-active {
  // анимация и пр.
}

JS: boardNode.classList.add('__item-active');
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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