Ist es möglich, gegebene Koordinaten zu verwenden, um einen Klick in JavaScript innerhalb einer Webseite zu simulieren?Wie simuliert man einen Klick mit x, y Koordinaten in JavaScript?
Antwort
Sie können eine klicken Sie auf Ereignis, obwohl dies nicht das gleiche wie ein echter Klick ist. Zum Beispiel kann es nicht verwendet werden, um ein domainübergreifendes iFrame-Dokument zu glauben, dass es angeklickt wurde.
Alle modernen Browser unterstützen document.elementFromPoint
und HTMLElement.prototype.click()
, seit mindestens IE 6, Firefox 5, jede Version von Chrome und wahrscheinlich jede Version von Safari, die Sie wahrscheinlich kümmern werden. Es wird sogar Links folgen und Senden von Formularen:
function click(x,y){
var ev = document.createEvent("MouseEvent");
var el = document.elementFromPoint(x,y);
ev.initMouseEvent(
"click",
true /* bubble */, true /* cancelable */,
window, null,
x, y, 0, 0, /* coordinates */
false, false, false, false, /* modifier keys */
0 /*left*/, null
);
el.dispatchEvent(ev);
}
Passen Sie die verwenden:
document.elementFromPoint(x, y).click();
https://developer.mozilla.org/En/DOM:document.elementFromPoint https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/click
Das ist unglaublich !! Genau das, was ich gesucht habe !!! = O – RadiantHex
funktioniert es mit IE und WebKit? – RadiantHex
@RadiantHex: Ja, tatsächlich war IE der Erste, der es implementierte und es geht weit zurück zu IE6. Chrome, Firefox und Safari 5-Implementierungen sind in Ordnung, aber Safari 4 und Opera sind nicht korrekt (obwohl praktikabel). Siehe http://www.quirksmode.org/dom/w3c_cssom.html#documentview. –
Aus Sicherheitsgründen können Sie den Mauszeiger nicht mit Javascript bewegen oder einen Mausklick simulieren.
Was möchten Sie erreichen?
@Aicule: Danke, dass Sie mich wissen lassen! Ich füge ein paar Informationen zur Frage hinzu. Ich experimentiere nur, nichts wirklich produktiv =) – RadiantHex
In Chrome und Safari können Sie einen Klick auf eine bestimmte x, y-Position auslösen. So funktioniert [diese Demo] (http://thdoan.github.io/magnify/demo-map.html). Firefox ist der einzige Browser, in dem es fehlschlägt, also ist es vielleicht eine Firefox-spezifische Sicherheitsrichtlinie. – 10basetom
Wahrheit liegt in der Antwort unten, createEvent() '+' initMouseEvent() ' – Valer
Ja, können Sie einen Mausklick durch ein Ereignis erstellen und Dispatching simulieren click
Methode auf einem Element - es ist weit verbreitet, aber nicht Standard und wird in zB fehlschlagen PhantomJS. Ich nehme an, dass jQuerys Implementierung von .click()
das Richtige tut, aber nicht bestätigt hat.
rettete mich aus einem Durcheinander. Meine anfängliche Methode scheiterte, aber diese kam mir zu Hilfe, danke. – iChux
plus1 für die Verwendung von jQuery. Im Gegensatz zu der angenommenen Antwort beantwortet dieser die Frage. – tomekwi
Dies ist viel, viel mächtiger als jQuery '' .click() ' –
Dies ist nur torazaburo's answer, aktualisiert, um ein MouseEvent-Objekt zu verwenden.
function click(x, y)
{
var ev = new MouseEvent('click', {
'view': window,
'bubbles': true,
'cancelable': true,
'screenX': x,
'screenY': y
});
var el = document.elementFromPoint(x, y);
el.dispatchEvent(ev);
}
- 1. Javascript Klick auf Koordinaten innerhalb iframe
- 2. Wie schreibt man (x, y) Koordinaten dem Text zu?
- 3. Wie emimiere ich eine Bildschaltfläche in .NET WebBrowser-Steuerelement mit X- und Y-Klick-Koordinaten klicken?
- 4. Bewegt Bild durch verschiedene x, y Koordinaten
- 5. Wie man einen Klick simuliert, um den aktuellen Eingang zu verlieren seinen Fokus mit JavaScript
- 6. Wie simuliert man JavaScript-Ausbeute?
- 7. Javascript erhalten x und y Koordinaten auf Mausklick
- 8. Wie simuliert man einen Low-Level-Tastendruck auf os x?
- 9. Wie zeichne Punkte in x/y-Positionen mit JavaScript
- 10. X- und Y-Positionierung mit Javascript/jQuery
- 11. X- und Y-Koordinaten aus String extrahieren
- 12. UILabel-Einstellung x, y-Koordinaten programmatisch
- 13. WPF Popup Control - Finde X, Y Koordinaten
- 14. Wie bekomme ich x, y Koordinaten mit Python?
- 15. x + y + = z = in Javascript
- 16. Erhalten relative Maus X/Y in Javascript
- 17. Slice Artikel von (x, y) in Javascript
- 18. Sortieren von Koordinaten (x, y) einer Parabel y = ax^2 + bx + c x = x1, x2, x3, x4. y-Koordinaten gemäß
- 19. Wie man eine Berührung auf iOS simuliert
- 20. Wie verwende ich Javascript, um nach X-Y-Koordinaten in meinem Browser zu suchen?
- 21. Wie simuliert man einen Tastendruck in js
- 22. android Startbildschirm Widget x-y Koordinaten
- 23. Wie plotten x, y Koordinaten in c3.js Diagrammbibliothek?
- 24. Eingabeelement generiert x und y Koordinaten des Mausklicks
- 25. Lesen x y z Koordinaten von Android-Handy mit Beschleunigungsmesser
- 26. Gibt es in JavaScript einen Unterschied zwischen typeof x == 'y' und typeof x === 'y'?
- 27. Minimale Werte von X- und Y-Koordinaten in PointCollection (C#)
- 28. Erhalte X- und Y-Koordinaten eines Wortes in UITextView
- 29. Wie simuliert man Berührungsereignisse in Windows 7?
- 30. Cursor-Position in einem Textfeld (Zeichenindex, nicht x/y-Koordinaten)
Was ist Ihr Ziel? :) Versuchen Sie beispielsweise, einen Klick auf eine Imagemap zu simulieren? –