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

时间:2014-12-18 11:03:02

标签: javascript html css d3.js

我想只选择带有"隐藏"的节点。适用于它的类。我有其他形状有"隐藏" class apply,但我只需要选择节点。

我认为这可行:

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

在HTML中:class: "node hidden"

所以我也试过

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

但是这并没有选择应用了隐藏类的节点

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

类需要添加一个点:

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

选择所有使用css选择器。以下是有关css选择器的文档:http://www.w3schools.com/cssref/css_selectors.asp

答案 1 :(得分:1)

你只能使用像这样的纯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