Является ли хорошей идеей использовать атрибуты DOM Element с именами пользовательских атрибутов? - PullRequest
3 голосов
/ 24 июня 2011

Считается ли хорошей практикой использование вызовов getAttribute / setAttribute элемента DOM для связывания дополнительной информации о содержимом элемента?

Например, я хочу позвонить setAttribute("MY_ATTRIBUTE_VALUE", "..."), где MY_ATTRIBUTE_VALUE не имеет ничего общего с <div>.

Спасибо!

Ответы [ 3 ]

2 голосов
/ 24 июня 2011

Вы обязательно должны идти с атрибутами данных.Вот статья о них. Пользовательские атрибуты данных HTML5 .

1 голос
/ 24 июня 2011

Если вы считаете, что разметка предназначена для представления, то сопоставление данных с элементами HTML несовместимо с этой философией. Если вы считаете, что это не имеет значения, используйте атрибуты data- , представленные в HTML5. Однако обратите внимание, что HTML5 не является стандартом и еще не получил широкой поддержки (если термин «поддерживается» имеет какое-либо значение в контексте «живой спецификации», которая постоянно меняется). Однако атрибуты data- , скорее всего, не будут расстраивать большинство браузеров, но вы должны использовать get / setAttribute для надежного доступа к ним независимым от браузера способом.

Рекомендуется хранить данные отдельно от представления, чтобы можно было изменить представление, чтобы обеспечить несколько просмотров одних и тех же данных. Если вы привязываете данные к презентации, вы уменьшаете свою способность делать это. Это также означает, что изменение модели данных может оказать ненужное влияние на представление.

Хранение данных в объекте и привязка его к элементу (скажем, по идентификатору элемента), вероятно, обеспечит гораздо более быстрый доступ к данным (прямой доступ к свойству гораздо быстрее, чем вызовы функций, передающие строки) и позволит более гибкий пользовательский интерфейс и модель данных.

1 голос
/ 24 июня 2011

Это очень хорошая практика, если вы устанавливаете настраиваемые атрибуты данных , целью которых является хранение метаданных об этих элементах.Атрибуты данных имеют вид data-name, где name может быть любым допустимым дескриптором.

Традиционно люди добавляют классы, и в некоторых случаях это все еще уместно (например, когда класс описывает состояние атрибута итакже обозначает класс стиля, для которого этот класс используется в основном).

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