1

我有一个带有两个元素的输入选择,我想将它们添加到 svg 容器中,以便保持两个元素的顺序。我尝试过使用这样的 :first-child 选择器插入

var newlayers = layer.enter();
newlayers.insert("g",":first-child")

作为使用 :first-child 选择器的结果,输入选择中的第二个元素最终成为插入后 svg 容器中的第一个元素。我怎样才能避免这种行为?

4

1 回答 1

0

好的,在以这种方式创建插入选择后,我能够使用 .sort 重新排序元素:

var newlayers = layer.enter();
newlayers.insert("g",":first-child")
.sort(function(a,b){ return b-a; });

这使数据的顺序保持不变,而仅对 DOM 中插入的元素重新排序。我沿着 enter() 本身返回的数据重新排序的路线走下去,这带来了一系列全新的其他问题。

于 2012-10-13T19:52:31.990 回答