Próbuję zasymulować naciśnięcie klawisza "enter" z javascript dla automatyzacji.Zdarzenie wprowadzania javascript nie działa w google
var script = document.createElement('script');
script.src = 'https://code.jquery.com/jquery-1.10.2.min.js';
script.type = 'text/javascript';
document.body.appendChild(script);
var e = jQuery.Event("keypress");
e.which = 13; //choose the one you want
e.keyCode = 13;
To jest kod służący do konfiguracji wydarzenia kluczowego (próbowałem również keydown i keyup).
Wydaje się, że to nie działa podczas wyszukiwania w Google. Jeśli napiszę jakiś tekst i wywołam zdarzenie w polu wejściowym $("[name=q]").trigger(e)
nic się nie dzieje.
Używam google do testowania symulacji "właściwego" zdarzenia wejścia. Mam nadzieję, że użyję js do automatyzacji klienta WWW skype.
Czy ktoś wie, czy możliwe jest symulowanie rzeczywistego naciśnięcia klawisza Enter przy użyciu javascript? Widziałem, że Selenide działa pressEnter()
, ale używa webdrivera, więc może to nie ma znaczenia.
Próbowałem zostały również natywną js zdarzenie wyzwalające
var dispatchKeyboardEvent = function(target, initKeyboradEvent_args) {
var e = document.createEvent("KeyboardEvents");
e.initKeyboardEvent.apply(e, Array.prototype.slice.call(arguments, 1));
target.dispatchEvent(e);
};
dispatchKeyboardEvent($("[name=q]"), 'keypress', true, true, null, 'h', 13, '');
Sidenote Jestem świadomy, że zapytania można składać dzwoniąc .submit() na elemencie, ale nie to, że jestem po.
Nic się nie dzieje? Spodziewam się, że konsola błędów zarzuci, że jQuery nie została zdefiniowana. (O ile nie zostało to już zdefiniowane przed uruchomieniem skryptu, w takim przypadku pierwsze cztery wiersze są bezcelowe). – Quentin
brak błędów, wypluwa element jak większość wywołań jquery – Bobbzorzen
jest elementem, który wybrałeś związany z jquery? –