В чем разница между классом и идентификатором в jQuery? - PullRequest
4 голосов
/ 09 января 2010

В чем разница между классом и идентификатором в jQuery? Например:

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

и

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

Потому что один хорошо работает с jQuery, а другой - нет. Спасибо.

Ответы [ 5 ]

11 голосов
/ 09 января 2010

ID должны быть уникальными на странице, когда у вас есть несколько элементов с одинаковыми ID, jQuery выбирает только первый Это потому, что не нужно беспокоиться о поиске других, так как не должно быть больше & ndash; это может объяснить странное поведение, которое вы испытываете.

Если вы хотите, чтобы несколько элементов имели одинаковую функциональность, присвойте им одинаковый класс. Если вы хотите идентифицировать определенный элемент, присвойте ему идентификатор. Это касается не только jQuery, но и всего HTML и CSS.

5 голосов
/ 09 января 2010

Я не думаю, что это различие действительно является jQuery - jQuery просто «заимствует» свой синтаксис селектора из HTML / CSS.

Самая большая разница: идентификаторы должны быть уникальными, а классы - нет.

Ознакомьтесь с этой статьей , чтобы подробно и подробно рассмотреть этот вопрос.

4 голосов
/ 09 января 2010

Классы и идентификаторы взяты из CSS. Идентификаторы должны быть уникальными в вашем HTML-документе (например, mainmenu), классы могут использоваться несколько раз в одном документе. Идентификаторы обычно идентифицируют уникальный элемент в вашем документе, где классы помогают применять общий стиль к нескольким элементам на странице.

Итак, если вы хотите скрыть, скажите все ссылки с «зеленым» классом, который вы можете сделать:

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

И тогда все ссылки с «зеленым» классом будут скрыты. Принимая во внимание, что если вы хотите скрыть определенный элемент с идентификатором (скажем,

1 голос
/ 09 января 2010

Элемент может иметь несколько классов, и несколько элементов могут иметь один и тот же класс, однако только один элемент может иметь определенный идентификатор. (Если вы определите несколько элементов с одинаковым идентификатором, jQuery вернет только первый).

* +1002 * Действительно:
<span class="myclass myclass2 mycall3"></span>

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

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

Идентификатор относится к конкретному элементу управления, поэтому только ОДИН элемент управления должен иметь конкретный идентификатор.

Если у вас есть следующее:

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

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

Если вы выберите следующее с помощью jQuery

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

jQuery выберет первый и вернет Hello

Примечание: классы и идентификаторы не имеют ничего общего с jQuery и не имеют ничего общего с действительным HTML. jQuery и CSS используют эти соглашения для выбора определенных элементов.

0 голосов
/ 09 января 2010

Идентификатор уникально идентифицирует элемент на веб-странице, независимо от его типа (кнопка, div, радио и т. Д.), Где класс используется для идентификации определенного типа элементов.

ура

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...