Я использую d3 и хочу добавить элемент, который я добавляю.
svg.append('g').attr('foo', 'bar')
.selectAll('rect').data(data)
.enter().append('rect')
.attr('class', function(d) { return 'some-class' })
.attr('y', 0)
.attr('height', 42)
.attr('x', function(d) { return d.x); })
.attr('width', 9001);
// hot damn would it be cool if I could just .append a span here...
Я хочу добавить диапазон к элементам, которые я вставляю, но я не знаю, как это сделать. Люди говорят использовать appendTo, но я не знаю, как это работает с selectAll, я пробовал перебирать элементы и добавлять их, но это тоже не работает, и я не знаю, почему.
svg.append('g').attr('foo', 'bar');
_.each(data, function(d) {
var rect = $('rect')
.attr('class', function() { return 'some-class'; })
.attr('y', 0)
.attr('height', 42)
.attr('x', function() { return d.x; })
.attr('width', 9001)
.append('<span class="cool-class">Spantastic!</span>');
svg.append(rect);
});
Я не очень знаком с этим типом вещей, я сделал несколько изменений, догадываясь, как это должно быть, но ничего не работает (d3 содержит информацию об объекте, не имеющем метода "indexOf"). Любые идеи? Спасибо.
.append("span")
в конец вашего первого блока кода. Это добавит элементspan
к каждомуrect
. - person Lars Kotthoff   schedule 03.12.2013