selection.html - 要素のHTMLを取得、変更する
投稿日: / 更新日:
d3.jsのselection.html()
は、要素内のHTMLを取得、または変更するためのAPIです。JavaScriptのinnerHTML
プロパティがベースとなっています。
サンプルコード
<p>SYN<mark>C</mark>ER</p>
// p要素を取得
var selection = d3.select( "p" ) ;
// p要素のHTMLを取得
var htmlContent = selection.html() ;
// p要素に新しいHTMLを指定
selection.html( "value", "<mark>SYNCER</mark>" ) ;
デモ
構文
value || selection = selection.html( [ value || function ] )
項目 | 説明 |
---|---|
value | 省略可。要素に新しくセットしたいHTMLを指定する。省略して引数をなしにした場合は、現在のHTMLを取得する。 |
function | 引数に指定する値を、関数にすることもできる。ここで指定した関数は、第1引数に要素に関連付けられたデータ、第2引数にインデックス番号をとる。また、this で要素を参照できる。戻り値が値として設定される。 |
項目 | 説明 |
---|---|
value | 引数を指定しなかった場合、対象要素内のHTMLが戻り値となる。 |
selection | 引数を指定してHTMLを変更した場合は、d3.selectionオブジェクトが戻り値となる。 |
ノート
- 引数なしなら取得
- 引数を指定しない場合はHTMLの取得。
- 引数ありなら変更
- 引数を指定した場合はHTMLの変更。
- テキストだけの場合
- 要素内に存在するのがテキストだけの場合、また、変更する時に指定するのがテキストだけの場合は、代わりに
text()
を使った方がパフォーマンスは格段に良い。