我正在使用Google的可视化:组织结构图库,
文档链接:https://developers.google.com/chart/interactive/docs/gallery/orgchart
我正在尝试更改样式并为每个节点创建链接。
我一直在尝试使用:
chart.setRowProperty((nodenumber), 'style', 'background-color:#FFF');
对于每个节点但没有成功。我放置代码的地方只会崩溃脚本。知道为什么吗?从每个独立节点创建链接的最佳方法是什么?
使用Javascript:
<script type='text/javascript' src='https://www.google.com/jsapi'></script>
<script type='text/javascript'>
google.load('visualization', '1', {packages:['orgchart']});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'name');
data.addColumn('string', 'parent');
data.addColumn('string', 'hover');
data.addRows([
['Parent', '', ''],
['Kid1', 'Parent', ''],
['Kid2', 'Parent', ''],
['GreatKid3', 'Kid1', ''],
['GreatKid4', 'Kid1', ''],
['GreatKid5', 'Kid2', ''],
['GreatGreatKid6', 'GreatKid5', ''],
['GreatGreatKid7', 'GreatKid5', ''],
]);
var chart = new google.visualization.OrgChart(document.getElementById('chart_div'));
chart.draw(data, {allowHtml:true, allowCollapse:true});
chart.collapse(1,true);
chart.collapse(2,true);
}
</script>
CSS
#chart_div{
width:800px;
}
HTML
<body>
<div id='chart_div'></div>
</body>
答案 0 :(得分:2)
它崩溃了脚本,因为OrgChart对象没有#setRowProperty方法 - 你想使用DataTable #setRowProperty方法:
data.setRowProperty((nodenumber), 'style', 'background-color:#FFF');
此外,在节点上设置“background-color”样式将无法执行您想要的操作,因为有一个“背景”样式将覆盖它,因此您必须将“background:#FFF”设置为实际获取要显示的背景颜色。以下是基于您的代码的示例:http://jsfiddle.net/asgallant/YZ7CB/