У меня есть SVG и диаграмма, которая отображает внутри SVG на основе ширины и высоты. Я хотел бы создать страницу, где есть несколько SVG, каждая из которых содержит диаграмму, а SVG, который щелкнут, затем немного расширяется. Я могу сделать это без перехода, но я бы хотел сделать его визуально привлекательным. Было бы замечательно, если бы я мог сделать что-то вроде:D3 Переходы - внесение изменений во время перехода
svg.transition().duration(whatever).attr("width",whatever);
, но я хочу, чтобы быть в непрерывном режиме функции график изменения размера, как переход происходит. Конечно, я мог бы начать переход на svg, а затем отдельный переход на элементы диаграммы, но я понимаю, что не гарантируется прогресс в том же темпе и что сроки на переходах не гарантируются точно. Самый простой способ, которым я могу это сделать, - установить какой-то слушатель в атрибуте width SVG, но некоторые попытки переполнения стека показывают, что это невозможно. Все они предлагают функцию setter, которая вызывает слушателя, а затем сбрасывает значение, но это не работает здесь, потому что переход заботится обо всем этом.
Также как только я закончу, я буду делать больше, чем просто регулировать ширину, мне не нужна помощь, я просто хотел бы знать, есть ли способ запустить функцию изменения размера диаграммы в качестве перехода прогрессирует здесь так или иначе, что, поскольку svg-переходы, график будет по-прежнему иметь правильный размер.
Спасибо.