【发布时间】:2019-04-01 14:14:38
【问题描述】:
我在 d3.js 中制作了一个条形图。当我单击其中一个刻度时,一个 div 会出现在与此特定刻度链接的条形图下方。因此,有 24 个刻度,其中 24 个匹配的 div 包含有关这些刻度的信息。
这很好用,但现在我希望在打开一个新 div 时关闭所有其他 div。
这是我到目前为止的代码。我需要再次按下勾号才能关闭它。 Bar Chart
d3.selectAll(".tick")
.on("click",clickme)
function clickme(d){
var info = document.getElementById(""+d+ "");
if (info.style.display === "none") {
info.style.display = "block";
} else {
info.style.display = "none";
}
}
这就是我的 div 的样子
<div style = "display:none" id="Coal CCS retrofit" class = "hidden"> 1 </div>
<div style = "display:none" id="Coal CCS new built" class = "hidden"> 2 </div>
我试图合并这个 jQuery:
$(document).ready(function () {
var $answers = $('.hidden');
$(".member").click(function () {
var $ans = $(this).next(".hidden").stop(true).slideToggle(100);
$answers.not($ans).filter('.block').stop(true).slideUp();
})
});
使用以下 CSS:
.hidden {
display:none;
}
当我使用 Jquery 时,div 会弹出,并在此之后立即“向上滑动”。我认为这是因为蜱虫没有类“成员”,但我无法使其工作。
【问题讨论】:
标签: d3.js bar-chart show-hide axis-labels