gpt4 book ai didi

javascript - 如何隐藏谷歌组织结构图中所选元素的 HTML 类?

转载 作者:行者123 更新时间:2023-11-28 16:12:05 25 4
gpt4 key购买 nike

我有一个谷歌组织结构图,这是我的 source code in JSFIDDLE我有这个功能

if(collapsed == 0)
{
$(function(){
$(".plus").hide();
});
}

我有一个名为 plus 的类,它有一个为每个节点显示的图片,但我想如果一个节点没有子项,我希望该类(加上图像)只为没有子项的项隐藏。在我的例子中,它隐藏了所有节点,我不需要它。

在我的例子中,Carol 没有 child ,他不需要有与 Alice 相同的加号图像

谢谢

最佳答案

您正在使用类选择器隐藏元素,它将隐藏此类存在的所有元素,您应该使用其他选择器来标识该节点

如果您需要隐藏节点,那么您将不得不更新数据本身,这里是您可以实现的方法。

更新 fiddle :http://jsfiddle.net/w8Ytq/102/

var runOnce = google.visualization.events.addListener(chart, 'ready', function() {
// set up + sign event handlers
var previous;
$('#chart_div').on('click', 'div.plus', function () {
var selection = chart.getSelection();
var row;
if (selection.length == 0) {
row = previous;
}
else {
row = selection[0].row;
previous = row;
}
var collapsed = chart.getCollapsedNodes();
var collapse = (collapsed.indexOf(row) == -1);

chart.collapse(row, collapse);
chart.setSelection();

// get a new list of collapsed nodes
collapsed = chart.getCollapsedNodes();

// set up event listener to recollapse nodes after redraw
var runOnce2 = google.visualization.events.addListener(chart, 'ready', function() {
google.visualization.events.removeListener(runOnce2);
for (var i = 0; i < collapsed.length; i++) {
chart.collapse(collapsed[i], true);
}

});

var children =chart.getChildrenIndexes(row);
for(var i=0;i< children.length;i++)
{
var childrenOfChildren = chart.getChildrenIndexes(children[i]);
if(childrenOfChildren == "")
{
var col1 = data.getValue(children[i],0);
var col2 = data.getValue(children[i],1);
var col3 = data.getValue(children[i],2);

data.removeRow(children[i]);
data.insertRows(children[i], [[col1, col2, col3]]);

}
}

// redraw the chart to account for the change in the sign
chart.draw(data, options);

});

关于javascript - 如何隐藏谷歌组织结构图中所选元素的 HTML 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38186336/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com