Как инициировать mousemove при keydown в javascript без jQuery?

Дело в том что при keydown выполняется функция с аргументом event,
и при mousemove выполняется функция с аргументом event.

Нужно каким то образом инициировать mousemove при keydown, чтоб выполнилась функция вычисляющая координаты мыши. В jQuery есть метод .trigger(), а как можно сделать подобное без jQuery?

Или как-то можно получить событие мыши
document.body.onkeydown = function (e) {
	_this.control.keyboard(e);
        
        var mouse_e = "событие мыши"; // получить событие мыши
	_this.control.mouse(mouse_e);
}


Надеюсь смог объяснить понятно.
  • Вопрос задан
  • 2598 просмотров
Решения вопроса 1
IonDen
@IonDen
JavaScript developer. IonDen.com
Как то так:
var trigger = function(el,type)
	{
		var event;
		if (document.createEvent) {
			event=document.createEvent('HTMLEvents');
			event.initEvent(type,true,true);
		} else {
			event=document.createEventObject();
			event.eventType=type;
		}

		event.eventName=type;
		if (document.createEvent) {
			el.dispatchEvent(event);
		} else {
			el.fireEvent('on'+event.eventType,event);
		}
	};


Но на самом деле надо быть проще.
На mousemove сохраняйте текущие х и y мышки в паре переменных.

На keydown просто возьмите их из этих переменных.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
13 мая 2024, в 09:39
25000 руб./за проект
13 мая 2024, в 09:37
15000 руб./за проект
13 мая 2024, в 09:17
30000 руб./за проект