Почему я получаю эффект «влета» при попытке изменить размер шрифта в D3? Смотрите мой минимальный пример:D3 font-size переход
<!DOCTYPE html>
<title>Test text transtion</title>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.17/d3.min.js">
</script>
<body>
<button>Toggle</button>
<script>
var svg = d3.select('body').append('svg')
var myLabel = svg.append('text')
.attr('y', 100)
.text('Watch me.');
var toggle = false;
d3.selectAll('button').on('click', function() {
toggle = !toggle;
myLabel.transition()
.style('font-size', toggle ? '2em' : '1em');
});
</script>
</body>
Это, очевидно, не желаемого эффекта. Я просто хочу, чтобы текст расти или сокращаться на месте без особых фанфаров. В another thread кто-то определяет пользовательскую анимацию. Означает ли это, что нет более простого способа? Я был бы очень удивлен, потому что это обычный эффект, и встроенный интерполятор отлично справляется с непрозрачностью и шрифтом.
Также, если я определяю пользовательскую анимацию, означает ли это, что другие встроенные переходы I, имеющие ток (непрозрачность и т. Д.), Должны быть поставлены в очередь, так как только один переход может быть активным в элементе в данный момент времени?
@RobertLongson Хорошо, я редактировал вопрос в ответ на ваш комментарий. – bongbang