发现设计还是很有意思的:
- 整个表格都是用 canvas 画进去了,据作者说是为了性能。
- 在 canvas 之上有一层不可见的 table,外部 col, row, cell 和 canvas 上画的 1:1 复制,这是为了无障碍用户。
-
最顶层是 overlay,用于响应所有鼠标和键盘事件,用户操作后更新到上层 canvas。
- 这层很简单,要解决点击、拖拽,以及编辑 cell 的各种浮动组件
而后大略看了一下腾讯的在线表格,也是相似的构造(除了没有无障碍层)
发现设计还是很有意思的:
最顶层是 overlay,用于响应所有鼠标和键盘事件,用户操作后更新到上层 canvas。
而后大略看了一下腾讯的在线表格,也是相似的构造(除了没有无障碍层)