当我看到诸如How do I exclude elements whose ID ends in a certain suffix using jQuery之类的问题时,我忍不住想:jquery是否会过多地鼓励对DOM进行这种临时(和处理器密集型)查询?我们不应该更好地组织我们的UI,以便将这些类型的查询保持在最低限度,如果不是完全消除的话。
答案 0 :(得分:7)
是否鼓励它?不,我不这么认为。 更好地启用吗?当然你可以争辩说,但它不是特定于jQuery的,任何带有选择器引擎的库都会犯同样的错误。
这与任何框架有何不同?
具体到手头的主题,我认为“如果没有完全消除”是不现实的,有什么可以替代,给每一个元素它自己的ID?您经常需要遍历,例如当悬停打开自己的孩子时,此菜单等等。
我完全支持尽可能干净的DOM,因为它也可以产生最干净的脚本(并尽可能地消除它)。我也赞成使用CSS来完成这项工作,例如我认为像:hover
这样的简单事情经常被忽略。
完整意见:这是jQuery的错吗?不,不是真的,除非故障是可扩展的和用户友好的,它只是具有非常低的进入阈值,并且它可以更容易地成为懒惰开发者的工具。无论什么是最容易使用的库也将保留这个王冠,带有领域(我不是说jQuery,取决于开发人员关于哪个库最容易使用)。
你所谈论的是开发人员的错误,他们是不了解一种技术(HTML)并试图用另一种技术(JavaScript)进行创可贴的人。问题的根源不在于jQuery是一种可能的解决方案,而是首先需要任何解决方案。
答案 1 :(得分:1)
可以使用javascript修补很多糟糕的网页设计元素。这是一种在网络上非常流行的气味