javascript(jQuery)を使用して、などの特定の要素を1つにsvg動的にラップしようとしていますrecttextg
これは、svgが最初にどのように見えるかです
<div id="container">
<svg ...>
<rect .../>
<circle .../>
<text ...>...</text>
</svg>
</div>
タグにラップするために使用するスクリプト( jQueryを使用してツリー(SVG)の真ん中に(g)ノードを挿入する@で受け取った役立つ回答に基づく)。g
$("#container svg > *").wrapAll('<g id="parent" />');
変形svgはこんな感じ
<div id="container">
<g id="parent">
<svg ...>
<rect .../>
<circle .../>
<text ...>...</text>
</svg>
</g>
</div>
しかし、UIには何も表示されません。ファイアバグでさえ、gがグレー表示されていることを示しています(非表示の要素の場合と同様)。

呼び出し$("#parent").show();は時々機能しますが、すべてではありません
質問:
- なぜ
gそれが動的に作成され、デフォルトで非表示になっているのですか? - なぜ
$("#parent").show()一貫性のない動作をするのですか? - グループ化要素を動的にグループ化する別の(より良い)方法はありますか?
- 私はSVGにまったく慣れていませんが、jQueryとDOMの操作には比較的慣れています。私がSVGを単なる別のタグとして扱っている方法は間違っていますか?
Firefox(15.0.1)とChrome(21.0.1180.89)の両方で試してみましたが、同じ結果になりました