Wie kann ich auf einen href-link dynamisch in firefox? Erwartet, dass Ansatz funktioniert nur im IE
http://jsfiddle.net/HVGre/1/ - test-link.
Ich habe einen html-link auf meine Seite, ich muss in der Lage sein, auf dynamisch. Dies funktioniert gut mit die .klicken Sie auf () - Funktion im IE, aber nicht im firefox. Ich kann nicht den link ändern, a-Taste, so dass nicht eine option, es muß ein href.
<a href="javascript:alert('!');" id="myHrefLink">My HREF Link</a>
<script>
document.getElementById("myHrefLink").click();
</script>
Gibt es eine gute Abhilfe für dieses in firefox? Ich bin in der Lage, jQuery verwenden, wenn, und öffnet alle Möglichkeiten.
- Ich nicht zuweisen möchten einen Ereignis-handler für den link, ich habe einfach auf den link klicken müssen, die dynamisch mit javascript (ohne dies manuell mit der Maus).
- Kann ich nicht verändern, die Funktionalität der original-link. Es muss so bleiben wie es ist.
EDIT:
Es scheint, dass das Problem, Firefox hat mit diesem code ist, dass der link nicht ein onclick-Ereignis und hat den code verwiesen wird über das href -, oder sonst NICHT onclick (im Beispiel hier der code auf href, in meinem eigentlichen code, das href ist gesetzt, nur '#', aber den link irgendwie löst andere Aktionen aus, wenn Sie angeklickt wird, fragt mich nicht wie, es ist ein komisches flash-integration mit dem tool plupload).
<a href="javascript:alert('This works!');">Click me dynamically</a>
VS
<a href="#" onclick="alert('This works!');">Click me dynamically</a>
Das zweite Beispiel ist solide und funktioniert in allen Browsern, wenn das click () - Funktion ausgelöst wird, aber ich brauche die erste dieser beiden arbeiten ohne Wechsel der link dynamisch oder auf andere Weise. Irgendwelche klugen Ideen?
Es wird als undefiniert in firefox, und so eine Funktion im IE. Vielleicht sollte ich das erwähnt haben dies früher, aber dieser link ist auch innerhalb eines iframe. Having said that, es gibt die Referenz auf das a-href-element nur in Ordnung, es scheint mehr wie firefox einfach nicht glauben, dass Sie auf() ist eine Funktion der <a> - element.
Der obige code ist vereinfacht, was ich wirklich bin, arbeiten, mit, natürlich, aber ich habe kopieren und fügen Sie ihn in w3school ist tryit editor im IE und im FF auf, damit ich die gleichen Ergebnisse wie sehe ich in meinen komplexere Variante. w3schools.com/js/tryit.asp?filename=tryjs_write
InformationsquelleAutor Maxx | 2011-07-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das Verhalten hier hängt die genaue Firefox-version:
click()
Methode auf Anker an alle.So sind Ihre Optionen, zu warten, bis Ende September, wenn Firefox 7 Schiffe, oder wenn Sie brauchen, um Unterstützung für frühere Versionen nicht verwendet
.click()
auszulösen links. Immer die.href
den link und dann auf das setzen des entsprechenden Fensters Position string sollte funktionieren, da ein workaround.Firefox 5 veröffentlicht wurde, Ende Juni, ja. Wenn Sie noch 3.6, dann sind Sie verpassen. 😉
Also ich denke, das wird irgendwann anfangen zu arbeiten, auf seine eigene? Ich nehme an, das funktioniert für mich, es war nur erforderlich, um die Arbeit im IE6 sowieso (ja, noch jemand verwendet). Ich war vor allem neugierig auf die Besonderheiten der Ausgabe und ich denke, ich habe meine Antwort nun.
Ja, ab Ende September wird dies nur funktioniert, zumindest für Firefox-Nutzer, die aktuell sind.
InformationsquelleAutor Boris Zbarsky
Hier ist meine andere Antwort. Diese wird dynamisch entfernen, was in das "href", " # " im href und das hinzufügen einer onclick="" durch "alert ("Link wurde angeklickt')".
Hier der code:
Können Sie sehen, es arbeiten hier: http://jsfiddle.net/JVHEs/
Ich hoffe, das hilft.
An dieser Stelle habe ich das Gefühl, ich bin einfach nur ein Wermutstropfen, aber diese Lösung würde nicht funktionieren für mich. Das problem ist, dass dieser link hat den event-Handler irgendwo in den weiten der code, den ich keinen Zugriff habe und es ist nicht so, dass jeder spezifische code aber passieren, dass der eigentliche link angeklickt werden. Sonst könnte ich nur vergeben onclick="eval" (dies.href);" (für JS) oder onclick="window.Lage=.href" (ein link), leider ist es der Akt der Klick, dass ich brauche, um herauszufinden,: ( Vielleicht sollte ich einfach umbuchen diese Frage als ein spezifisches Problem mit den 3rd-party-software, die ich verwende.
Dass code, der auf den link klickt aber. Sie können die gewöhnlichen
<a href="javascript:alert('!');" id="myHrefLink">My HREF Link</a>
klicken Sie durch klicken auf die div. Wenn Sie sicherstellen möchten, klicken Sie auf den link dynamisch von selbst, einfach die$('#myHrefLink').trigger('click');
vor dem letzten});
gibt es etwas, was ich bin nicht immer? Das ist, für mich zu arbeiten, ohne dass das einen tag oder so. Durch hinzufügen des script-Tags auf Ihrer Seite, es wird auf den link klicken. Kann ich den code Bearbeiten, so dass es automatisch auf den link klickt, wenn Sie es wünschen.Lassen Sie mich versuchen, diese ein weiteres mal
Ich versuchte dies wieder, und es ist ein no go. a=$("iframe").Inhaltsverzeichnis().finden(".plupload_start"); ein.attr({ href: '#', onclick: alert("Link wurde angeklickt");return false;' }); ein.trigger('click'); Es wirkt, wie wenn nichts schief geht, aber aus welchem Grund auch immer der upload nicht starten (soll-Anwendungsfall). Jedenfalls hab ich gesagt, das wird behoben werden in den kommenden Versionen von firefox und ich brauche nur es funktioniert in IE, so denke ich, werde ich es dabei belassen. Ich wirklich zu schätzen alle Ihre Hilfe und die Zeit, die Sie damit verbracht, um mir zu helfen.
InformationsquelleAutor Nathan
Die Antwort ist, dass Sie nicht dynamisch klicken Sie auf das href-Teil einen link in firefox oder chrome zu dieser Zeit.
VS
Es scheint, dass FireFox ist nur in der Lage, um das Feuer ein click-Ereignis auf einen HTML-link, wenn ein onclick-Eigenschaft vorhanden ist. Es gibt Unmengen von Möglichkeiten, dieses so lange wie der link kann geändert werden, in irgendeiner Weise (siehe die meisten Kommentare in diesem Beitrag), aber soweit zu tun, was ich ursprünglich gedacht, das funktioniert nur im IE, derzeit.
http://jsfiddle.net/HVGre/1/ - siehe fehlgeschlagen Ergebnisse hier.
InformationsquelleAutor Maxx
Sollte dies funktionieren, auch im Firefox. Vielleicht das Problem ist, das Sie anrufen .klicken Sie auf, bevor der DOM fertig ist. JQuery hat eine schöne Methode dafür:
Nicht In JQuery Ihre beste Wette ist:
Kann dies nicht das Problem sein, aber nicht sicher, was es sein könnte...
Leider Neustarten hat nicht funktioniert. Es scheint wie eine tatsächliche Frage schließlich. Hat jemand von Euch schon getestet, diese noch? Ich kann nicht der einzige sein, der dieses gebrochen ist. Versuchen Sie einfach, durch klicken auf einen link auf einer beliebigen Seite mit firebug.
wenn ich gehe zu jQuery.com und ausführen $("a")[0].klicken Sie(); oder $($("a")[0]).trigger("click"); in firebug funktioniert es nicht.
InformationsquelleAutor Serj Sagan
Ich denke, du gehst zu haben, um mit jQuery, jQuery arbeitet für mich:
Sehen Sie ein Beispiel in jsFiddle: http://jsfiddle.net/7vCmj/
Vielleicht war es ja gar nicht arbeiten, weil Sie nicht haben
type="text/javascript"
?Ich hoffe, das hilft.
Ich sehe das, was du jetzt meinst. Der Grund, warum es nicht funktioniert ist, weil es in der href. Aber ich denke ich habe eine Lösung für die! Sie können dynamisch hinzufügen eines onclick, um das A-tag und entfernen Sie dann das href-Inhalt dynamisch. (Werden Sie nicht haben, um es zu Bearbeiten oder nichts) poste ich es als eine weitere Antwort.
Als ich es gepostet. Siehe meine Antwort oben. 🙂
InformationsquelleAutor Nathan
Versuchen, diese
InformationsquelleAutor ShankarSangoli
Versuchen, diese stattdessen fügen Sie Verweis auf die jQuery-Datei zuerst.
InformationsquelleAutor Gaurav Pandey
Dies funktioniert die meiste Zeit
EDIT:
und hier ist das andere ich immer Locker
mein pastebin:
http://pastebin.com/VMHvjRaR
InformationsquelleAutor Joseph Marikle
Hier ist eine andere Lösung die alle links auf der Seite und konvertiert Sie in das click-Ereignis unauffällig. Im wesentlichen drehen
in
Genießen:
InformationsquelleAutor Jeff the Bear
Warum gehst du nicht einfach tun? (Es sei denn, ich bin fehlt etwas)
InformationsquelleAutor Phil
Es ist nicht klar, was Sie versuchen zu erreichen, aber wie kann man jQuery verwenden, versuchen Sie dies:
AUSZULÖSEN, klicken Sie auf:
bitte finden Sie in den aktualisierten Antworten
Es scheint WIRKLICH, wie das funktionieren sollte. Ich war sehr hoffnungsvoll, aber es funktioniert nicht in FF. Getestet habe ich es im w3school ist tryit editor
Haben Sie doppelte IDs oder ähnliches? Javascript-Fehler?
Interessanterweise funktioniert es nicht im IE entweder mit dem obigen code, es ist aber nicht mit der original-code, den ich gepostet in der Frage.
InformationsquelleAutor Dunhamzzz