如何仅选择具有特定 CSS 类的节点?D3/JS.

How do I select only nodes with a certain CSS class ? D3/JS

本文关键字:节点 D3 JS CSS 选择 何仅      更新时间:2023-09-26

我只想选择应用了"隐藏"类的节点。我还有其他应用了"隐藏"类的形状,但我只需要选择节点。

我认为这可能有效:

var nodesVisible = inner.selectAll(".node").selectAll(".hidden")
            .classed("hidden", false);

在HTML中,它有:class: "node hidden"

所以我也尝试过

var nodesVisible = inner.selectAll("node hidden")

但这不会选择应用了隐藏类的节点

有什么想法吗?

类需要以点开头:

var nodesVisible = inner.selectAll(".node.hidden")

全部选择使用 css 选择器。这是关于 css 选择器的文档: http://www.w3schools.com/cssref/css_selectors.asp

你只能使用这样的纯JavaScript来做到这一点

.HTML

<div id="c" class="hidden otherclass">  </div>

JAVASCRIPT

var div=c //get the element by id
if(div.className.indexOf('hidden')>-1&&
   div.className.indexOf('otherclass')>-1){
alert("yes the element has a hidden and otherclass classes")
// do other stuff
} 

更新

我在条件中添加了>-1