0

初心者の質問です。以前の投稿で説明したように、私は Flash から SVG Land に移行し、ActionScript への期待と誤解が満載です。

D3 を使用してインタラクティブなグラフィックを作成しました。ユーザーが状態の上にマウスを置いたときに表示される小さなポップアップ ボックスを追加することを除いて、ほぼ完成しています。現在、ステージの左側に「ウェスト バージニア」というラベルの付いた静的なオブジェクトとして表示されます。

http://www.50laboratories.com/miscellany/demographicclout2.html

ポップアップは、独自の ID を持つグループです。ホバーされている状態に応じて x と y の位置を設定できるようにする必要がありますが、今のところ方法がわかりません。Flash で名前付きのムービー クリップを扱う場合と同じように、JavaScript でグループをアドレス指定できるように思われますが、このような API リファレンスにアクセスするには、https://github.com/mbostock/d3/wiki/API-参照、グループ オブジェクトのメソッドとプロパティへの参照が見当たりません。よろしくお願いします。

4

1 に答える 1

0

actionscript とは異なり、svg 要素は dom ノードであり、それらを操作するには属性またはスタイル プロパティを設定する必要があります。dom ノードの特定の属性/スタイル セッターを呼び出すことでこれらを操作できますが、d3 を使用しているため、d3 のセッターを使用してこれらの属性/スタイルを設定します。

d3 を使用して要素を配置する方法は、1. 割り当てた ID で要素を選択します。 2.transform属性をに設定します。translate([some-x], [some-y])

d3.select("#statepopup").attr("transform", "translate(50,100)");

PS 変換属性は、グループをスケーリングおよび回転する方法でもあります。

于 2013-10-11T04:15:15.400 に答える