Идеальный подход состоит в том, чтобы указать отношения посредством группировки элементов HTML вместе (например, обтекание в <div>
), а затем использовать обход родительского / дочернего DOM.
Однако, если это не может быть сделано, то подход, который вы используете, является хорошим. Единственная проблема, о которой вы упомянули, - это использование атрибута rel
. В HTML5 вам разрешено использовать data-
атрибуты для этой цели:
<a href="#" class="contact-viewer" data-contact="first-contact">View contact</a>
Вы можете получить это значение в обработчике событий с помощью:
el.getAttribute('data-contact');
Дополнительная информация о пользовательских атрибутах данных здесь .