свойство метаданных для элемента <li> - PullRequest
2 голосов
/ 03 августа 2011

Я хотел бы добавить некоторые метаданные в элементы списка, чтобы они выглядели примерно так:

<ul>
    <li summary="A White Drink">Milk</li>
    <li summary="A tiny White football">Eggs</li>
    <li summary="A Cube of gooey sliminess">Butter</li>
</ul>

Какое свойство я использую?Я не хочу его составлять и не хочу использовать свойство title, потому что метаданные будут отображаться во всплывающей подсказке браузера.

Ответы [ 3 ]

3 голосов
/ 03 августа 2011

Вам нужно сделать это в собственно HTML?Я думаю, что метаданные лучше всего хранить в DOM.Если вы используете jQuery, попробуйте .data(): http://api.jquery.com/jQuery.data/

. Лучшее решение для правильного HTML - это, IMHO, использовать пользовательский атрибут данных.Из спецификации HTML5: «В каждом элементе HTML может быть указано любое количество пользовательских атрибутов данных с любым значением.»

Пользовательские атрибуты данных указаны в http://www.w3.org/TR/html5/elements.html#custom-data-attribute.

2 голосов
/ 03 августа 2011

В спецификации HTML5 введен определенный атрибут, известный как пользовательские атрибуты данных. Они позволяют встраивать невидимую информацию, связанную с элементом. Здесь - это страница спецификации, которая детализирует ее. Также см. Пост в блоге Джона Ресига , в котором обсуждается, как использовать их с jQuery (хотя вам не нужно использовать jQuery для использования пользовательских атрибутов данных, вы можете довольно легко получить данные из DOM через element.dataset свойство).

В конце концов, вам вообще не нужно сильно менять HTML:

<ul>
    <li data-summary="A White Drink">Milk</li>
    <li data-summary="A tiny White football">Eggs</li>
    <li data-summary="A Cube of gooey sliminess">Butter</li>
</ul>
1 голос
/ 03 августа 2011

Вы можете использовать метаданные JQuery ... http://plugins.jquery.com/project/metadata

Метаданные JQuery позволят вам сформировать ключи (такие как «сводка») и значения и поместить их непосредственно в элемент.

...