【发布时间】:2013-09-27 02:28:56
【问题描述】:
谁能帮我解释一下以下内容:
1)我有一个动态创建的 html 表。它有 30 多列和 100 多行。我已经能够使用箭头按钮在表格的单元格中导航。当我移动到下一个单元格时,我将焦点设置到新单元格并更改单元格的边框。
我应该使用 .addClass('className') 和 .removeClass('className') 还是应该使用 .css('border','1px solid') 来更改单元格的边框。
在浏览器重绘本身方面两者是否相似?一个比另一个更可取吗?
2)如果相反,我单击另一个单元格而不是使用箭头移动到该单元格,我想清除以前的单元格边框。因为我没有对旧单元格的引用,所以我最终不得不清除整个 'table tr' 边框,这可能有点过头了。
基本上,当我单击单元格或箭头指向单元格时,在单元格周围放置边框的最佳实现是什么?以及删除它的最佳方法?我注意到有点滞后,我不知道是否是由于 addClass 和 removeClass 导致浏览器重绘页面。
提前致谢
【问题讨论】:
-
使用类更易于维护。我的猜测是性能影响来自您选择行的方式,而不是添加/删除类或样式。
-
您不需要删除所有单元格的边框。您可以定位具有边框的单元格...
$("td.className").removeClass("className");