複数のDOM要素をノードで指定する

説明

D3.jsで複数のDOM要素をノードで指定するにはselectAll()メソッドを使います。パラメーターにgetElementsByTagName()で取得した要素や、子ノードなどを指定します。例えば以下のサンプルのようにdiv要素内にあるp要素を書き換える場合、p要素のノードをselectAll()のパラメーターに指定します。

サンプル [サンプルを実行する] [サンプルをダウンロード]

HTMLソース

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>D3.js サンプル</title>
<link rel="stylesheet" href="css/main.css">
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>
</head>
<body>
<h1>D3.jsサンプル</h1>
<div id="root">
<p></p>
<p></p>
<p></p>
</div>
<script src="js/sample.js"></script>
</body>
</html>

JavaScriptコード

var r = document.getElementById("root");
var e = r.getElementsByTagName("p");
d3.selectAll(e).text("まとめて書き込んでいます");