繁体   English   中英

使用jQuery时,是否应该使用ID以外的类?

[英]Should I be using classes more than ID's when utilizing jQuery?

作为一名新的Web开发人员,我一直在利用StackOverflow之类的许多资源来协助我进行学习和开发过程。

使用jQuery时,到目前为止我遇到的所有示例/响应都只引用了类,如下所示:

$('.yourClass')

相对于

$('#yourID')

看到类引用似乎是一种趋势(老实说,我还没有找到一个向ID编写jQuery的作者),对于使用ID的w / jQuery或JS,我应该注意一些陷阱吗? 谢谢!

编辑1:我知道ID是用于单项的,类是用于访问多个项的。 我对为什么看不到任何引用ID的jQuery或JS示例感兴趣。 谢谢!

您可能需要根据具体情况询问每个作者,但是通常在创建示例时,使用的选择器并不重要。 重要的是您拥有一个可以调用方法的jQuery集合。


通过在示例中使用类选择器,可以避免新手开发人员声称您的插件在尝试对具有相同ID的多个元素使用时不起作用。 您的示例旨在说明如何在一个或多个元素(而不只是一个)上使用它。

人们喜欢使用类,因为id在整个页面上必须是唯一的。 当尝试使可重用,可插拔的组件成为可能时,id使其无法实施。

例外:新的Web组件标准允许您将ID封装到仅组件中。

ID必须是唯一的,您只能有一个ID(例如高地人)。

类用于标识对象的“类型”而不是特定的对象。

一个强制性的汽车类比:
ID是一个车牌,对于一个特定的事物来说是唯一的#345-abc
该类涉及诸如.truck之类的整个类别

注意,像$(“。something”)这样的选择器实际上将能够生成DOM元素列表; 因为它将选择所有带有“ something”类的DOM元素

ID选择器$(“#unique”)只会返回一个元素

首先考虑一下HTML和CSS。

使用课程

如果您有多个HTML元素,它们的外观,感觉和行为都相同,那么强烈建议使用一个类来表示其样式和行为。

例如:表格上的行或列,以完全相同的方式进行动画处理的导航按钮,包装到整个网站中具有相同大小的图像等。

使用ID

但是,如果您有一个唯一的HTML元素表示一个页面中的特定事物,状态或动作,则该元素应包含一个ID。

示例:弹出模式,一个外观独特的按钮,您网站上可以按其ID导航到的独特部分等。

然后,您可以在JavaScript和jQuery或其他您想使用的东西中使用此行为。

进一步阅读

我知道您完全知道为什么我们应该使用ID或类。 但是,这里给出的绝大多数答案都在考虑项目环境。

因此,假设编辑一个链接到整个项目范围的.js文件,这里的想法是尽可能可重用,因此,为什么您会看到比ID多得多的类引用。 很难维护引用该项目国外的不同ID的项目js文件。 同样的情况也适用于CSS。

我希望答案足够,可以发表评论或建议。 :-)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM