Я столкнулся с той же проблемой, с которой я обходился, не делая переходы в фоновых вкладках.
mbostock показывает хороший фрагмент для этого на https://github.com/d3/d3-transition/issues/93#issuecomment-516452828
Вспомогательный метод ...
d3.selection.prototype.maybeTransition = function(duration) {
return duration > 0 ? this.transition().duration(duration) : this;
};
… для использования следующим образом:
selection
.maybeTransition(document.visibilityState === "visible" ? my_duration : 0)
.attr(…
Захватывая события видимости страницы, можно даже адаптировать время перехода таким образом, чтобы время перехода уменьшилось (таким образом, переход ускорился) таким образом, чтобы оно заканчивалось примерно в то же время, если страница не была в фоновой вкладке.