我有两个问题。我正在尝试创建一个谷歌图表表。
A) 我需要正在创建的实际表格元素的 ID,以便我可以进行一些修改。那么,如何设置/获取表 ID?
B)如何将自定义 CSS 类添加到表格标签?我基本上想将 css 从 material-design-lite 添加到这些表中。
太感谢了!
我有两个问题。我正在尝试创建一个谷歌图表表。
A) 我需要正在创建的实际表格元素的 ID,以便我可以进行一些修改。那么,如何设置/获取表 ID?
B)如何将自定义 CSS 类添加到表格标签?我基本上想将 css 从 material-design-lite 添加到这些表中。
太感谢了!
首先,您可以使用配置选项cssClassNames
分配给图表的特定区域。
如...
headerRow - 为表头行(元素)分配一个类名。
tableRow - 为非标题行(元素)分配一个类名。
...
如果这没有帮助,您可以根据需要修改 dom,一旦图表为ready
.
您必须指定一个容器id
来最初绘制图表,通常是一个div
.
所以你不需要id
谷歌table
来修改它。只需浏览您使用 JavaScript 定义的容器的内容即可找到您需要的内容。
例如,在某些浏览器中滚动时锁定第一列标题行存在一个已知问题。以下是我用来解决这个问题的功能,我有点作弊,使用MicrosoftAjax.js
to getBounds
。
_googleChartFixScroll: function(sender, args) {
var googleBounds;
var googleDivs;
var googleRows;
googleDivs = this._containerChart.getElementsByTagName('DIV');
if (googleDivs.length === 3) {
googleRows = this._containerChart.getElementsByTagName('TR');
if (googleRows.length > 0) {
googleBounds = Sys.UI.DomElement.getBounds(googleRows[0]);
googleDivs[2].style.height = googleBounds.height + 'px';
}
}
},
关键是,在div
您为图表定义的范围内,如果您只知道如何探索 dom,您可以操作 google 图表。一旦你找到了你需要的元素,你就可以应用你想要的任何风格......
在我的示例中,每当表的行数过多并且需要锁定列标题时,就会出现三个div
而不是两个。因此,我找到第一个表格行并将其锁定。
希望这可以帮助...