我遇到了一个问题:当行高不标准时,动手滚动就会跳跃。
我的代码是:
$(document).ready(function () {
function createBigData() {
var rows = []
, i
, j;
for (i = 0; i < 10; i++) {
var row = [];
for (j = 0; j < 7; j++) {
row.push(Handsontable.helper.spreadsheetColumnLabel(j) + i + "\n2nd_row");
}
rows.push(row);
}
return rows;
}
$('#example1').handsontable({
data: createBigData(),
});
});
jsfiddle:http://jsfiddle.net/LR4Ne/
尝试滚动到表格的底部。你看到它来回跳跃吗?
我注意到旧版本的handontable js没有那样工作,试着改变
<script src="http://handsontable.com/dist/jquery.handsontable.full.js"></script>
到
<script src="http://old.handsontable.com/dist/jquery.handsontable.full.js"></script>
它现在可以正常工作。
请指教。 提前谢谢!
- 梅德
答案 0 :(得分:0)
我完全确定新的简介版本的问题是什么,但问题是由于您进入每个单元格的\n
换行符而出现。 Handsontable有一种方法可以将标记输入到单元格中,我已经在fiddle中使用了该方法,但问题仍然存在。如果删除\n
并添加更多行,则可以正常工作。 (旁注:我在这里使用了<br>
,因为我认为在语义上更有意义,但是你使用它并不重要。)你会注意到在这个例子中,你可以滚动,但是一次你到了底部,它又开始变得狂热了。这导致我:
要解决此问题,您可以定义插件使用的.wtHider
类的最小高度。这是一个有效的fiddle,展示了如何解决问题。
这里的主要问题是,滚动时,handsontable实际上是使用新查看的行重新渲染表。重新渲染后,handontable会动态设置.wtHider
和.wtHolder
的高度,这就是造成问题的原因。
这是一个“hacky”解决方案,但它应该可以满足您的需求。希望这会有所帮助。
根据请求,这是另一个小问题,修复了表格底部的空格问题:http://jsfiddle.net/8awo0gzk/1/