selection.append - 要素を追加する
投稿日: / 更新日:
d3.jsのselection.append()
は、要素を追加するためのAPIです。
サンプルコード
<div></div>
// div要素を選択
var selection = d3.select( "div" ) ;
// div要素に新しくinput要素を追加 (タグ名で指定)
selection.append( "input" ) ;
// div要素に新しくinput要素を追加 (関数で指定)
selection.append( function() {
var inputElement = document.createElement( "input" ) ;
return inputElement ;
} ) ;
デモ
構文
selection = selection.append( string || function )
項目 | 説明 |
---|---|
string | 追加したい要素のタグ名を文字列で指定する。指定したタグ名の要素が新しく生成(createElement )される。名前空間を指定する場合、ns:tag とプレフィクスを付けて指定する。svg 、xhtml 、xlink 、xml 、xmlns に関しては、プレフィクスを指定しなくても認識される。 |
function | 関数を指定すると、戻り値を値として指定できる。この関数は、直前でdata() を利用した場合、第1引数で配列の値、第2引数でインデックス番号を受け取る。関数の戻り値は、タグ名を表す文字列ではなく、要素(ノード)でなければいけない。 |
項目 | 説明 |
---|---|
selection | 引数を指定してHTMLを変更した場合は、d3.selectionオブジェクトが戻り値となる。 |
ノート
- 文字列ならタグ名
- 引数が文字列なら、そのタグ名を指定する。
- 関数なら要素
- 引数が関数なら、戻り値が要素(ノード)になるようにして指定する。関数でタグ名(string)を戻り値にした場合、エラーが発生する。
- prepend()はどうやる?
- 追加ではなく、前に挿入したい場合は
insert()
を利用する。