Как определить тип файла с помощью Jquery

Разберем на примере. Есть вот примерно такая HTML конструкция

<p>Пожалуйста, ознакомьтесь с <a href="/files/lenobl_delivery.pdf">тарифами</a>.</p>

Задача: надо определить тип файла с JQuery в ссылке, и подставить иконку, что бы визуально было понятно, что это за ссылка.

Используем для этого актуальную версию JQuery. Код довольно простой. Логика такова: перебираем все ссылки в блоке, и вставляем строчный элемент <i class="b_icons"></i> с необоходимым классом перед ссылкой.

$('.b_article-full a').each(function () {
    if (/.*\.pdf/.test($(this).attr('href'))) {
        $(this).before('<i class="b_icons pdf"></i> ');
    }
    if (/.*\.zip/.test($(this).attr('href'))) {
        $(this).before('<i class="b_icons zip"></i> ');
    }
    if (/.*\.doc/.test($(this).attr('href'))) {
        $(this).before('<i class="b_icons doc"></i> ');
    }
    if (/.*\.docx/.test($(this).attr('href'))) {
        $(this).before('<i class="b_icons doc"></i> ');
    }
});

Далее немного чудо SCSS кода:

.b_icons {
    display  : inline-block;
    width    : 16px;
    height   : 16px;
    position : relative;
    top      : 3px;
    &.pdf {
        background : url(путь к иконке)
    }
    &.doc {
        background : url(путь к иконке)
    }
    &.zip {
        background : url(путь к иконке)
    }
}

Вот так просто можно определить тип файла с JQuery в документе.

Несколько сайтов на одном VPS: размещение для студии

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

VPS для October CMS: как выбрать сервер и подготовить его к работе

Для October CMS важны совместимые версии ПО, доступ к консоли и настройка окружения. Разбираем, с какой конфигурации начать проверку и что подготовить перед запуском сайта.

Где хранить резервные копии сайта, чтобы они пережили аварию

Архив есть. А получится ли из него вернуть сайт? Разбираем состав резервной копии, выбор хранилища и проверку, которая покажет, переживёт ли бэкап аварию сервера.

Атаки на дата-центры: как подготовить сайт к отказу площадки

Физическое повреждение дата-центра или взлом хостинга могут остановить сайт целиком. Разбираем независимое резервирование, доступы и план восстановления.

Последние кейсы
Посмотреть все проекты
Начать проект вместе с нами
Заполните форму и отправьте
нам сообщение!
Если у Вас возникли вопросы, предложения, либо Вы желаете оформить заявку на заказ услуги — Добро пожаловать!
Контакты:
Бронзовый партнер October CMS:
Бронзовый партнер October CMS