Handsontable 滑动横向滚动条时表格元素的类名会被重置,怎么不重置
时间: 2024-03-08 10:49:34 浏览: 14
可以使用 Handsontable 的 `afterScrollHorizontally` 回调函数,在滑动横向滚动条时重新设置表格元素的类名,从而避免被重置。具体实现可以参考以下代码:
```javascript
var hot = new Handsontable(document.getElementById('example'), {
// ...其他设置...
afterScrollHorizontally: function() {
var tdElements = this.view.TBODY.querySelectorAll('td');
for (var i = 0; i < tdElements.length; i++) {
tdElements[i].classList.add('my-class');
}
}
});
```
在这个示例中,我们在滑动横向滚动条时,重新为表格中所有的`td`元素添加一个名为`my-class`的类名。您可以根据自己的需要修改类名和添加的方式。
相关问题
Handsontable 滑动横向滚动条时表格元素的类名会被重置
在Handsontable中,滑动横向滚动条时表格元素的类名会被重置是因为HandsonTable的渲染机制。当你滑动横向滚动条时,HandsonTable会重新渲染当前可见区域的表格元素,此时会将表格元素的类名重置为默认值。
如果你想在滑动横向滚动条时保持表格元素的类名不变,可以通过自定义单元格渲染函数来实现。具体步骤如下:
1. 定义一个自定义的单元格渲染函数,该函数可以根据表格数据和列、行索引等信息返回一个DOM元素,同时保留表格元素的类名。例如:
```
function customRenderer(instance, td, row, col, prop, value, cellProperties) {
// 处理表格数据,返回需要显示的DOM元素
// 在这里可以获取并保留表格元素的类名
td.innerHTML = value;
td.className = td.className + ' ' + cellProperties.className;
return td;
}
```
2. 在初始化HandsonTable实例时,将自定义的单元格渲染函数绑定到相应的列上。例如:
```
var hot = new Handsontable(container, {
data: data,
columns: [
{ data: 'id', renderer: customRenderer, className: 'my-class' },
{ data: 'name', renderer: customRenderer, className: 'my-class' },
{ data: 'age', renderer: customRenderer, className: 'my-class' },
// 其他列配置
]
});
```
通过以上步骤,你可以在滑动横向滚动条时保持表格元素的类名不变。需要注意的是,通过自定义单元格渲染函数来实现该功能可能会影响表格的性能,因此需要根据实际情况进行优化。
Handsontable 滑动横向滚动条时表格元素的类名会被重置,怎么不让类名重置
可以使用 Handsontable 的 `afterScrollHorizontally` 回调函数,在滑动横向滚动条时重新设置表格元素的类名,从而避免被重置。具体实现可以参考以下代码:
```javascript
var hot = new Handsontable(document.getElementById('example'), {
// ...其他设置...
afterScrollHorizontally: function() {
var tdElements = this.view.TBODY.querySelectorAll('td');
for (var i = 0; i < tdElements.length; i++) {
tdElements[i].classList.add('my-class');
}
}
});
```
在这个示例中,我们在滑动横向滚动条时,重新为表格中所有的`td`元素添加一个名为`my-class`的类名。您可以根据自己的需要修改类名和添加的方式。
阅读全文