Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在D3.js中操纵不透明度和文本_Javascript_Html_Css_D3.js_Selection - Fatal编程技术网

Javascript 在D3.js中操纵不透明度和文本

Javascript 在D3.js中操纵不透明度和文本,javascript,html,css,d3.js,selection,Javascript,Html,Css,D3.js,Selection,我正在尝试编写一个函数,使用点链接和D3将文本更改为div 我想选择我的外部div,将其不透明度转换为0,选择内部div并更改文本,然后将外部div转换回1。所以整个事情看起来像这样: d3.select("div#outer").transition() .duration(200) .style("opacity",0) .transition() .duration(200) .style("opacity",1) d3.select("div#i

我正在尝试编写一个函数,使用点链接和D3将文本更改为div

我想选择我的外部div,将其不透明度转换为0,选择内部div并更改文本,然后将外部div转换回1。所以整个事情看起来像这样:

d3.select("div#outer").transition()
    .duration(200)
    .style("opacity",0)
    .transition()
    .duration(200)
    .style("opacity",1)

d3.select("div#inner").transition().delay(200).text("This is the new text")

一定有更好的办法。我有没有办法把这两种选择结合起来?理想情况下,我会将此函数全部设置为一个函数,并相应地调用它。

您可以从外部div的转换中修改内部div,只需侦听将外部div的不透明度设置为零的转换的结束:

d3.select("div#outer").transition()
    .duration(200)
    .style("opacity",0)
    .on("end", function() {
      d3.select("#innerDiv").html("This is new text")
    })
    .transition()
    .duration(200)
    .style("opacity",1)
这看起来慢了下来:

d3.selectdivouter.transition .期限2000 .styleopacity,0 .ONED,功能{ d3.selectinner.html这是新文本 } 过渡 .期限2000 .不透明度,1 外{ 填充:50px; 背景色:ccc; } 一些文本
您可以从外部div上的转换中修改内部div,只需侦听将外部div的不透明度设置为零的转换的结束:

d3.select("div#outer").transition()
    .duration(200)
    .style("opacity",0)
    .on("end", function() {
      d3.select("#innerDiv").html("This is new text")
    })
    .transition()
    .duration(200)
    .style("opacity",1)
这看起来慢了下来:

d3.selectdivouter.transition .期限2000 .styleopacity,0 .ONED,功能{ d3.selectinner.html这是新文本 } 过渡 .期限2000 .不透明度,1 外{ 填充:50px; 背景色:ccc; } 一些文本
很高兴你取消了过渡,因为这是不可能的!完美,正是我需要的。非常感谢。end是一个特定于D3的操作,还是只是javascript?特定于D3?不是正常的DOM事件。此外,当所有选定项目结束其转换时,但当每个元素结束其转换时,也不会触发ONED侦听器-这可能需要在一次转换多个元素时进行一些额外的考虑。删除转换非常好,因为这是不可能的!完美,正是我需要的。非常感谢。end是一个特定于D3的操作,还是只是javascript?特定于D3?不是正常的DOM事件。此外,当所有选定项结束其转换时,但当每个元素结束其转换时,也不会触发ONED侦听器-这在同时转换多个元素时需要额外考虑。