Heim >Web-Frontend >js-Tutorial >Wie simuliere ich Klickereignisse in PhantomJS richtig?
Beim Versuch, mit der page.evaluate-Funktion und document.getElementById('idButtonSpan').click(); auf ein Element in PhantomJS zu klicken; , kann die Fehlermeldung „undefiniert ist keine Funktion...“ auftreten, obwohl das Element vorhanden ist. Dies liegt daran, dass .click() keine Standardfunktion zum Klicken auf Elemente in PhantomJS ist.
Um ein Klickereignis in PhantomJS zu simulieren, müssen Sie ein benutzerdefiniertes Ereignis wie folgt erstellen und auslösen:
function click(el) { var ev = document.createEvent("MouseEvent"); ev.initMouseEvent( "click", true, // bubble true, // cancelable window, null, 0, // screenX 0, // screenY 0, // clientX 0, // clientY false, // ctrlKey false, // altKey false, // shiftKey false, // metaKey 0, // button null // relatedTarget ); el.dispatchEvent(ev); }
Mit dieser Klickfunktion können Sie dann auf dem gewünschten Element ein Klickereignis simulieren.
Das obige ist der detaillierte Inhalt vonWie simuliere ich Klickereignisse in PhantomJS richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!