2

現在、削除された要素をドキュメントに戻すための専用 API はありません。ただし、関数を selection.append または selection.insert に渡して、要素を再度追加することができます。

https://github.com/mbostock/d3/wiki/Selections

関数を渡すとはどういう意味ですか? これを実装する方法がわかりません。削除された div を親に追加する関数を渡そうとしましたが、機能しませんでした。何か案は?

これは d3 の比較的新しい機能です。

4

1 に答える 1

4

a function that returns the DOM element to append

したがって、次のような単純なことができます。

d3.select("body").append(function() {
    return document.createElement("div");
});

単純に文字列名を使用する代わりに

d3.select("body").append("div");

d3 セレクターを使用する場合は、単一の要素ではないことに注意してください。それらはグループの配列です。したがって、あなたが言った場合:

var divs = d3.select("div").remove(); // actually a multidimensional array
var firstElement = divs[0][0]; // this can be appended by returning it

マイクからの関連テキストは次のとおりです。One nuance is that selections are grouped: rather than a one-dimensional array, each selection is an array of arrays of elements

これは、非常に基本的な例を示すための単純な作業フィドルです。

于 2013-08-22T01:05:31.370 に答える