Jquery选择,添加id只是为了让选择更容易,好还是不好?

时间:2014-11-10 09:50:21

标签: jquery css jquery-selectors selection

我只想问你是否优点在某些HTML元素上添加ID只是为了让他们的选择更容易。而不是使用所有可用的方法来遍历Jquery中的dom例如。

可以肯定的是,当我在更多元素上添加ID时,它会使HTML变得更重,但这种做法还有什么不好吗?

谢谢,

1 个答案:

答案 0 :(得分:2)

<强>优点

  • 它更快,jQuery“#id”选择器使用本机document.getElementById。并且ID的唯一性使它非常快(我猜它必须实现BST)
  • 您的代码更清晰。当我读取代码时,我更喜欢$(“#mycustomItem”)而不是$“(div ul li:eq(3)”)。因此,您可以轻松维护代码并快速发现错误

<强>缺点

  • HTML更重。我不认为和id将使你的文件显着更重。如果使用像gzip这样的压缩,即使对于大量元素也不会注意到差异
  • 服务器端逻辑更复杂:如果你生成id,你将在服务器端计算它们,因此会增加代码的复杂性。在大多数情况下,添加的复杂性将比您在客户端大小上删除的复杂性更重要。

<强>结论

如果您可以添加id使用它们,但如果它增加了服务器端逻辑的复杂性,则不要这样做。您获得的速度不值得花费在服务器端生成id的时间/复杂性。