1

raphael.jsによって作成されたものなど、動的に作成されたSVG要素でイベントがトリガされた場合、IE7の "エラー:失敗"を回避する良い方法はありますか?jQueryイベントはInternet ExplorerのSVG要素から伝播されます

jQueryがライブハンドラを調べてSVG要素が指定したライブセレクタに一致するかどうかを確認するときに「エラー:失敗」が生成されていると思います。 raphaelが作成した私のSVG上のすべてのイベント(mouseenter、mouseleave、clickなど)に対して、

e.stopPropagation(); 

を呼び出してください。

+1

IE 7は、SVGをサポートしていますか? Raphael.jsは正しくリコールすればIEのためにVMLを使います。 – jwueller

+0

Ahh。 [OK]を - 私はVML図面でトリガされたイベントに問題がある... –

+0

ここで同じ問題:( – stej

答えて

1

このjQueryの問題を防ぐ良い方法が見つかりませんでした。

私は、Raphael.jsのイベントをキャプチャしてe.stopPropagation()を呼び出していました。 IEのfireEventを使って、VML/SVG要素の親要素でイベントを再開しました。ハックのビットが、それは今のところ動作します。

0

"change"イベントに対するライブバインディングのjQueryのネイティブ "live"メソッドの代わりにBrandon Aaronの "livequery"プラグインを使用すると、この問題が解決されました。

参照:

hakoniemi

jQuery Bug

+0

ああクール、ありがとう! –

関連する問題