0

有人可以为我阐明以下几点:

1)我有一个动态创建的 html 表。它有 30 多列和 100 多行。我已经能够使用箭头按钮在表格的单元格中导航。当我移动到下一个单元格时,我将焦点设置到新单元格并更改单元格的边框。

我应该使用 .addClass('className') 和 .removeClass('className') 还是应该使用 .css('border','1px solid') 来更改单元格的边框。

就浏览器重绘本身而言,两者是否相似?一个比另一个更可取吗?

2)如果相反,我单击另一个单元格而不是使用箭头移动到单元格,我想清除以前的单元格边框。因为我没有对旧单元格的引用,所以我最终不得不清除整个“table tr”边界,这可能是一种矫枉过正。

基本上,当我单击它或箭头指向它时,在单元格周围放置边框的最佳实现是什么?以及删除它的最佳方法?我注意到有点滞后,我不知道是否是由于 addClass 和 removeClass 导致浏览器重绘页面。

提前致谢

4

1 回答 1

3

就浏览器重绘本身而言,两者是否相似?

重绘就是重绘,不管是什么原因造成的。

一个比另一个更可取吗?

第一个——因为它更好地分离了逻辑和表示。

也许下周你想要一个 2px 的边框,或者一个带点的边框,或者添加一个背景颜色——所以你只需更改你的 CSS,并保持脚本逻辑不变。

相反,如果我单击另一个单元格而不是使用箭头移动到该单元格,我想清除以前的单元格边框。因为我没有对旧单元格的引用,所以我最终不得不清除整个“table tr”边界,这可能是一种矫枉过正。

那么为什么不保留对先前突出显示的单元格的引用……?

于 2013-09-26T18:12:21.037 回答