Когато правя нещо като:
$("#container").addClass("contract");
Той добавя само клас към първия div с id контейнер
Когато правя нещо като:
$(".container").addClass("contract");
Добавя класа към ALL divs с клас контейнер
ЗАЩО ?
Отговори:
2 за отговор № 1Всеки идентификационен елемент трябва да е уникален. Идентификационният номер сочи към един и само един атрибут. Jquery или всяка друга рамка дори няма да помисли, че може да имате повече от един елемент с конкретен идентификационен номер. Всички ваши елементи трябва да имат различен идентификатор. Javascript и DOM очакват това (document.getElementByID например ще върне само един елемент и сега може да работи изобщо, ако ID се дублира). Всичко очаква това.
1 за отговор № 2
защото id
атрибутът трябва да е уникален в HTML документ. Така че няма нужда да търсите с други елементи id="abc"
когато откриете първия.
1 за отговор № 3
Атрибутът на идентификатор на елемент трябва еднозначно да го идентифицира.Атрипа клас може да се приложи към повече от един елемент.Като ID е уникален, jQuery ще го приложи само към първия елемент, който съответства на него.