Ich möchte einen Klick auf einen Link auf einer Seite mit JavaScript simulieren. Wenn dieser Link eine Funktion hat, die an sein "onclick" -Ereignis gebunden ist (durch irgendeinen anderen JS, den ich nicht kontrollieren kann), muss diese Funktion aufgerufen werden, ansonsten sollte sich der Link normal verhalten und eine neue Seite öffnen.Simulieren eines Klicks in jQuery/JavaScript auf einen Link
Ich bin mir nicht sicher, dass nur die Überprüfung des Werts des 'onclick' Handlers ausreichen würde. Ich möchte das so aufbauen, dass es auf jedem Link-Element funktioniert.
Ich habe keine Kontrolle darüber, welche Funktion vielleicht an das onclick-Ereignis des Links gebunden ist, mit welcher JS-Bibliothek (nicht unbedingt jQuery) oder einfach mit JavaScript.
EDIT: Mit Hilfe der Antworten unten sieht es aus wie es möglich ist, nach Ereignishandlern zu suchen, die mit jQuery angefügt werden, oder das onclick
Attribut zu verwenden. Wie kann ich nach Event-Handlern suchen, die mit addEventListener
/einer anderen JS-Bibliothek angehängt wurden, so dass es narrensicher ist?
„Wie kann ich mich für Event-Handler überprüfe angebracht addEventListener/andere JS-Bibliothek, so dass es narrensicher“? Nun * das * ist ein Duplikat;) Siehe http://stackoverflow.com/questions/446892/how-to-find-event-listeners-on-a-dom-node/447106#447106 –
Immer noch keine Lösung:) Gehen Sie vielleicht anders herum und versuchen Sie, einen Klick zu simulieren, indem Sie ein MouseEvent erstellen? http://stackoverflow.com/questions/1421584/how-cani-i-simulate-a-click-to-an-anchor-tag – ankit
@Ankit: Ja genau, diese zweite Antwort wird Handler feuern, egal wie sie angehängt wurden . Du sagst immer noch "sonst sollte sich der Link normal verhalten und eine neue Seite öffnen". Du wirst damit Probleme haben. Tut mir leid, ich habe keine Zeit, hier hilfreicher zu sein. –