SVGを使用して家系図を作成しています。小さな構造を以下に示します。現在ホバーされている「ノード」の親である「g」の最初の「rect」ごとに、クラス「ノード」の上にマウスオーバーして特定のクラス(たとえば「選択済み」)を追加するためのヘルプが必要です。
$ this.addClass('classname')が機能していません。だから私は$this.attr('class'、'classname')を使用しています
無力:現在ホバーされている「rect」のすべての親「g」を取得するには、親(jQueryの-)または同様のメソッドのような関数が必要です。
現在の作業-ここをクリック
サンプル構造。
<svg style="width:100%;height:455px" id="svg_root" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<g id="viewport" >
<g id="1">
<rect class="node" y="0" x="0" width="160" height="35" />
<text class="prof_name" y="14" x="34">Name</text>
<g id="2">
<rect class="node" y="40" x="30" width="160" height="35" />
<text class="prof_name" y="54" x="64">Name</text>
<g id="7">
<rect class="node" y="80" x="90" width="160" height="35" />
<text class="prof_name" y="94" x="94">Name</text>
</g>
</g>
</g>
<g id="18">
<rect class="node" y="120" x="0" width="160" height="35" />
<text class="prof_name" y="134" x="34">Name</text>
</g>
</g>
</svg>
jQueryはSVGとは相性が悪いと思います:(