Transition
优质
小牛编辑
117浏览
2023-12-01
过渡是从一个项目的一个状态转换到另一个状态的过程。 D3.js提供了一个transition()方法来在HTML页面中执行转换。 让我们在本章中了解过渡。
The transition() method
transition()方法可用于所有选择器,并启动转换过程。 此方法支持大多数选择方法,如-attr(),style()等。但是,它不支持append()和data()方法,这些方法需要在transition()方法之前调用。 此外,它提供了特定于转换的方法,如duration(),ease()等。简单的转换可以定义如下 -
d3.select("body")
.transition()
.style("background-color", "lightblue");
可以使用d3.transition()方法直接创建转换,然后与选择器一起使用,如下所示。
var t = d3.transition()
.duration(2000);
d3.select("body")
.transition(t)
.style("background-color", "lightblue");
一个极小的例子
现在让我们创建一个基本示例来了解转换的工作原理。
使用以下代码创建一个新的HTML文件transition_simple.html 。
<!DOCTYPE html>
<html>
<head>
<script type = "text/javascript" src = "https://d3js.org/d3.v4.min.js"></script>
</head>
<body>
<h3>Simple transitions</h3>
<script>
d3.select("body").transition().style("background-color", "lightblue");
</script>
</body>
</html>
在这里,我们选择了body元素,然后通过调用transition()方法开始转换。 然后,我们已指示将背景颜色从当前颜色转换为light blue 。
现在,刷新浏览器并在屏幕上,背景颜色从白色变为浅蓝色。 如果我们想将背景颜色从浅蓝色更改为灰色,我们可以使用以下过渡 -
d3.select("body").transition().style("background-color", "gray");