1

verbreitet Gibt es eine gute Möglichkeit, um IE7 "Error: Failed" zu erzeugen, wenn Ereignisse auf dynamisch erstellte SVG-Elemente ausgelöst werden (z. B. die von raphael.js erstellt)?jQuery-Ereignisse von SVG-Elementen im Internet Explorer

Ich denke, dass "Error: Failed" erzeugt wird, wenn jQuery meine Live-Handler durchsucht, um zu sehen, ob das SVG-Element mit einem der angegebenen Live-Selektoren übereinstimmt

e.stopPropagation(); 

für jede Veranstaltung rufen (MouseEnter-, mouseleave, klicken, etc.) auf meinem SVGs von raphael produziert.

+1

IE 7 unterstützt SVG? Raphael.js verwendet VML für IE, wenn ich mich richtig erinnere. – jwueller

+0

Ahh. Ok - Ich habe Probleme mit den Ereignissen, ausgelöst durch die VML-Zeichnungen, dann ... –

+0

das gleiche Problem hier :( – stej

Antwort

1

Ich konnte keinen guten Weg finden, dieses jQuery-Problem zu verhindern.

Also, was ich getan habe, war die Ereignisse in Raphael.js zu erfassen und e.stopPropagation() aufzurufen; dann habe ich IEs FireEvent verwendet, um das Ereignis erneut auf dem übergeordneten Element des VML/SVG-Elements zu starten. Ein bisschen wie ein Hack, aber es funktioniert für jetzt.

0

Ich fand, dass die Verwendung von Brandon Aarons "Livequery" -Plugin anstelle von jQuerys nativer "Live" -Methode für alle Live-Bindungen zum "change" -Ereignis dieses Problem löste.

See:

hakoniemi

jQuery Bug

+0

Ah cool, danke! –

Verwandte Themen