Ответы пользователя по тегу HTML
  • Есть хорошие примеры использования data-*?

    @yuras666
    Удобнее всего работать с ними через jquery data - это решит проблему совместимости со всеми браузерами.
    https://api.jquery.com/data/
    Например у нас есть кнопки по клику на которые у нас должны открываться попапы:
    <button type="button" data-open-dialog="#bs-example-1-dialog">Окно 1</button>
    <button type="button" data-open-dialog="#bs-example-1-dialog">Окно 1</button>
    <button type="button" data-open-dialog="#bs-example-1-dialog">Окно 1</button>

    Далее, мы можем в js описать только один обработчик:
    $(document).on('click', '[data-open-dialog]', function(){
       showPopupById($(this).data('openDialog'));
    });

    Кроме того, ты можешь хранить в data любой json, приводя пример с тем же попапом, можно хранить данные об объекте и строить из них попап после клика на кнопку.
    Еще пример jquery плагины часто ставят флаг о том, что они уже установлены на элементе, чтобы избежать повторной инициализации. Скажем $('#search-input').autocomplete() при первой инициализации запишет элементу $('#search-input').data('isAutocompleteInstall', true) и инициализирует элемент, а при втором вызове уже не будет инициализироваться по новой. Как-то так, если я верно понял твой вопрос.
    Ответ написан
    5 комментариев