jQuery中的class和id有什么区别?

问题描述:

jQuery中的class和id有什么区别?例如:jQuery中的class和id有什么区别?

<span class="lalal"></span> 

<span id="lalal"></span> 

因为一个良好的工作与jQuery和另一个不是真的。 谢谢。

+0

可能的复制,http://*.com/q/1215618/425313 – 2013-05-02 03:21:34

ID在页面上应该是唯一的,当你有多个具有相同ID的元素时,jQuery只选择第一个。这是因为它不必担心寻找其他人,因为不应该有任何更多可以解释您正在经历的奇怪行为的东西。

如果你想多个元素具有相同的功能,给他们相同的类。如果你想识别一个特定的元素,给它一个id。这不仅限于jQuery,还包括HTML和CSS。

+0

现在我明白为什么我有一个错误。谢谢。 – 2010-01-08 23:31:21

我不认为这个区别确实是一个jQuery的东西 - jQuery只是“借用”它的选择器语法从HTML/CSS。

最大的区别在于:ids意味着独特,类不是。

检查出this article为这个问题的冗长,全面的处理。

元素可以有多个类,多个元素可以具有相同的类,但只有一个元素可以具有特定的ID。 (如果你定义了多个具有相同ID的元素,jQuery将只返回第一个元素)。

有效:

<span class="myclass myclass2 mycall3"></span> 

<span class="myclass"></span> 

<span id="myspan"></span> 

ID是指一个特定的控制,因此,只有一个控制应具有特定ID。

如果您具备以下条件:

<span id="myspan">Hello</span> 

<span id="myspan">Goodbye</span> 

如果您选择使用jQuery

$("#myspan").html(); 

jQuery将选择第一个,并返回Hello

边注意以下几点:class和id与jQuery无关,一切都与有效的HTML有关。 jQuery和CSS使用这些约定来选择特定的元素。

类和ID来自CSS。 ID在你的HTML文档中应该是唯一的(认为是“mainmenu”),类可以在同一个文档中多次使用。 ID通常标识文档中的唯一项目,因为类可以帮助将常用样式应用于页面中的多个项目。

所以,如果你想隐藏,说与“绿色”类中的所有链接,你可以这样做:

$('a.green').hide(); 

然后用“绿色”类中的所有链接将隐藏。如果你想隐藏特定项目与ID,而(比如说< DIV ID =“MainMenu的” >),你会怎么做:

$('#mainmenu').hide(); 

id是网页唯一标识一个元素,无论它的类型(按钮,div,收音机等),其中Class用于标识特定类型的元素。

欢呼