Страница 1 из 1

dispatchEvent

СообщениеДобавлено: 10.11.2017 (Пт) 13:29
MadChild
Доброго времени.

Сломал всю голову, подскажите. Для удобства приведу пример на яндексе (ya.ru).
В консоли напираю:
Код: Выделить всё
var element = document.getElementsByClassName('websearch-button__text'); // Получаем объект необходимого элемента
var o = document.createEvent('MouseEvents');  // Создаём объект события, выбран модуль событий мыши
o.initMouseEvent( 'click', true, true, window, 1, 12, 345, 7, 220, false, false, true, false, 0, null ); // Инициализируем объект события
element[0].dispatchEvent(o);  // Запускаем событие на элементе

Выполняю, всё срабатывает - имитируется клик по кнопке "поиск".
Мне нужно имитировать нажатие Enter в элементе textbox. Пишу:
Код: Выделить всё
var element = document.getElementsByClassName('input__control'); // Получаем объект необходимого элемента
var o = document.createEvent('KeyboardEvent');  // Создаём объект события, выбран модуль событий мыши
o.initKeyboardEvent("keypress",true,true,null,false,false,false,false,13,0);// Инициализируем объект события
element[0].dispatchEvent(o);  // Запускаем событие на элементе

возвращает: True и ни чего не происходит.
Почему так, подскажите?