2016-04-19 8 views
1

Ich habe einen kleinen Java-Skript-Code geschrieben, der die URL für Anker-Tags mit gültiger URL ersetzt. Code für meinen HörerCtr + Klick funktioniert nicht in ie11

document.addEventListener("click", function (evt) { 
     // Some code to here 
     }; 

Ich habe den EventListener auf Klick binden, die einige Arbeit macht. Es funktioniert gut mit anderen Browsern, aber wenn ich ctr + klicke in ie11/edge es nicht den Hörer feuern. Es führt die normale Weiterleitung gemäß der URL im Anker-Tag durch. Kann jemand vorschlagen, wo ich falsch liege? Danke im Voraus.

Antwort

2

Ich denke, das ist, weil es den Link in einem neuen Fenster öffnet. Das click() - Ereignis erfasst auch nicht die rechte Maustaste und wählt dann "In neuer Registerkarte öffnen".

Was Sie versuchen könnten, ist mit dem jquery-Ereignis .mousedown() zu gehen, das das Ereignis fangen sollte, denke ich.

http://api.jquery.com/mousedown/

Sobald Sie das Ereignis gefangen Sie die ursprüngliche Aktion stoppen, die von evt.preventDefault ausgeführt würden() und dann verwalten die sich umleiten.

+0

Sorry für die späte Antwort, aber ich habe bereits 'mousedown' Ereignis versucht. Immer noch kein Glück –

+0

Meinst du, es feuert überhaupt nicht? Wenn das Ereignis vor der Weiterleitung ausgelöst wird (was es sollte), können Sie die Standardaktion verhindern und stattdessen Ihr eigenes Javascript ausführen. – Fuzzzzel

+0

es feuert das Ereignis, aber Redirect geht auf Standard-URL, aber nicht auf die ersetzte URL –