Probleme mit Blurevent im IE

03/28/2014 12:29 DarkCrusade2#1
Guten Tag,


Ich habe folgendes Problem:

für eine Inputbox habe ich ein Blurevent definiert (nutze Mootools), welches jedoch nur gecastet werden soll, wenn nicht auf ein Autosuggest-Item gedrückt wird. Daher benutze ich etwas in der Richtung (abgeänderte Fassung, funktioniert trotzdem) :


Also funktioniert überall (außer IE) so:
Nutzer gibt etwas ein, drückt irgendwo hin: Blurevent wird ausgelöst und verarbeitet. ODER: Nutzer drückt auf einen Vorschlag, Blurevent wird zwar ausgelöst, aber nicht verarbeitet, da dies ein anderes Event vornimmt.

Das funktioniert in allen Browsern außer IE. Im IE sagt er mir, dass ev.event.explicitOriginalTarget undefined ist. Wenn ich mir alle Unterobjekte rekursiv ausgeben lasse, ist da sehr viel Müll drin, vor allem Objekte, die viele undefinierte Unterobjekte haben. Zumindest nichts brauchbares.

Hat jemand eine Idee, wie das anders gehen könnte?

Vielen Dank im Voraus!


MfG

DarkCrusade2
03/28/2014 15:00 KoKsPfLaNzE#2
try das ma

if( !ev.event.explicitOriginalTarget )
ev.event.explicitOriginalTarget = ev.event.srcElement;
03/28/2014 19:47 xEncounter#3
IE ist als Browser eh eine Niete. Wenn du drauf verzichten kannst, mach dir garnicht die mühe für solche browser zu optimieren.
04/01/2014 15:36 DarkCrusade2#4
@Koksplanze: event.srcElement wird auch nicht gefüllt.
@xEncounter: IE hat bei uns immer noch einen Anteil von etwa 20%. Das können wir nicht einfach ignorieren.

*edit* : bzw. ev.event.srcElement wird gefüllt. Jedoch mit undefinierten Objekten. *facepalm*
04/01/2014 16:48 kissein#5
Browserweiche vorschalten da explicitOriginalTarget gecko-browser basierend ist.
04/01/2014 17:14 DarkCrusade2#6
Quote:
Originally Posted by kissein View Post
Browserweiche vorschalten da explicitOriginalTarget gecko-browser basierend ist.
Das ist ja klar. Allerdings muss ich so oder so einen Unterschied im Blurevent zwischen Autosuggest-Item und jedem anderen machen, egal ob im IE oder in einem anderen Browser.

Jedoch benötige ich ein Äquivalent im IE zu explicitOrigin und finde keins. :confused: