Допустимо ли когда-либо иметь несколько идентификаторов на html-странице?

Там ' s довольно много вопросов о переполнении стека о id vs class , но эти вопросы почти всегда связаны с CSS - и общепринятым ответом является использование классов для стилизации определенного набора элементы и идентификаторы для конкретных экземпляров. Это имеет смысл, достаточно честно.

Однако я нахожу, что по мере того, как я делаю все больше и больше Javascript / jQuery / ajax, этот подход начинает становиться менее четким, и я нахожу ситуации, когда семантически элементам следует давать идентификаторы, но поскольку может быть несколько экземпляров, я должен использовать классы.

Вот пример того, что я имею в виду:

Взгляните на панель инструментов в редакторе вопросов для уценки Stack Overflow - каждая кнопка имеет идентификатор для уникальной идентификации Это. Имеет смысл - это одна кнопка, которая выполняет определенную функцию, и вот она. Возможно, на основе этого идентификатора к нему привязан скрипт.

А теперь представьте, что я создаю многофункциональное веб-приложение, и есть страница с двумя вкладками, каждая с редактором уценки на ней. Означает ли это, что кнопки панели инструментов теперь должны использовать классы для идентификации их?

Это кажется неправильным.

Другой пример: я работаю над сайтом фотогалереи, где на каждую фотографию накладывается небольшая панель инструментов. Согласно соглашению, поскольку существует несколько экземпляров этих кнопок, я должен использовать классы. В самом деле?

Итак, у меня следующие вопросы ....

  • Если я совершу преступление, заключающееся в дублировании идентификаторов на странице, какие браузеры действительно сломаются?
  • Для браузеров, где это не работает, это просто стиль CSS это сломается, или также сломаются селекторы jQuery.
  • Неужели так плохо использовать повторяющиеся идентификаторы в случаях, подобных описанным.
12
задан Yi Jiang 23 September 2010 в 01:20
поделиться