クロムバージョン "54.0.2840"(Windows 7および8.1、現在のバージョンは2016-10-31現在)のイベントは<use>
タグから起動されませんでした。それはv53で機能し、現在のFirefoxやバージョンで動作します。使用タグで参照されるsvg要素のGoogle Chromeのイベントはありません
<body>
<svg>
<defs>
<g id="foo">
<rect x="0" y="0" width="50" height="50" fill="red" onclick="alert('b')"></rect>
</g>
</defs>
</svg>
<svg width="100" height="100">
<use xlink:href="#foo"></use>
<rect x="50" y="0" width="50" height="50" fill="blue" onclick="alert('a')"></rect>
</svg>
</body>
上記のコードでjsfiddle
、Firefoxで両方の警告(a)および(b)を示しているが、クロムのみ(A)が表示されて実行:ここでサンプルコードです。
私の質問は以下のとおりです。それは、このようなイベントをキャプチャする悪い習慣は
- ですか?
- この問題を回避する方法の提案はありますか? "foo"グループの特定のイベント要素が必要なので、 "use"タグのクリックをキャプチャするだけでは不十分です。
問題はthis post(私ではありません)に記載されています。バグトラッカーで報告されていませんでした。
更新
はどうやら動作は今やセキュリティ上の理由(解答のバグレポートへのリンクを参照)のためのものです。