Сломал всю голову, подскажите. Для удобства приведу пример на яндексе (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 и ни чего не происходит.
Почему так, подскажите?