Вы находитесь здесь:

HTML-комментарий как контейнер для данных

2009-05-22

В качестве контейнера для хранения текстовых данных, предназначенных для динамического отображения при помощи JavaScript, можно использовать обычный HTML-комментарий.

Комментарий является самостоятельным DOM-узлом, и его содержимое в виде текста доступно при помощи стандартного свойства любого DOM-узла — nodeValue.

Идентификатора или класса, в отличие от элементов, у комментария нет, поэтому «добраться» до комментария как DOM-узла можно одним из общих для всех DOM-узлов способом — например, при помощи свойств previousSibling / nextSibling соседнего узла.

Пример
<div id="example">«Опорный» элемент.</div><!--нужные нам данные-->

<script type="text/javascript">/*<![CDATA[*/
var comment = document.getElementById('example').nextSibling;
var data = comment.nodeValue;
alert(data);
/*]]>*/</script>

Данный метод позволяет избежать использования атрибутов не по назначению (например, задействуя атрибут title для хранения данных, не являющихся описанием элемента), использования нестандартных атрибутов, а также необходимости создания скрытых элементов (например, div), содержимое которых, к слову, прекрасно индексируется поисковыми машинами.

В результате:

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

Комментарии | добавить
HULK 2009-07-02

спасибо за статью, реально помогло ;)


Ваш комментарий

Вставка переводов строк и разбиение на абзацы происходит автоматически. HTML и BBCode не поддерживаются.

(не публикуется)
(спам бесполезен)
→ 
(можно будет отписаться)

© 2001—2010 Марат Таналин (http://TANALIN.com/)

Перепечатка любых материалов сайта в любом объёме запрещена


Статистика
  • Рейтинг@Mail.ru