Инициировать скачивание файла без обращения к серверу, используя js

Если файл генерируется на фронт-енд, то как инициировать скачивание файла в js? Давайте посмотрим.

Скачивание инициируется после нажатия пользователем на ссылку в браузере. Потому мы создадим элемент ANCHOR и выполним клик по нему.

Так как контент не передаётся с сервера, то он должен быть локальным. В этом нам поможет кодирование ссылки в виде blob объекта, куда мы сохраним наши данные для скачивания.

Пример функции для скачивания текста в виде файла:

Т.к. после скачивания ссылка нам становится не нужна, то она удаляется из DOM.

Мало букафф? Читайте есчо !

Вывод статистики переходов по внешним ссылкам с вашего сайта в Google Analytics

Сентябрь 21, 2018 г.

Аналитика от гугла позволяет регистрировать произвольные (пользовательские) события и выводить по ним статистику. О том, как создать событие пишут многие, ...

Читать

Сообщение Cannot read property 'msie' of undefined

Апрель 13, 2017 г.

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

Читать

Фильтрация тегов на уровне плагина в CKEditor 5

Апрель 7, 2025 г.

Плагин DataFilter позволяет управлять фильтрацией HTML тегов. Он является "родным" для CKE плагином, так что ничего дополнительно устанавливать не нужно. Рассмотрим как им можно управлять на уровне кастомного плагина. Допустим, вы хотите разрешить ...

Читать

Обратный порядок перебора элементов jQuery each()

Сентябрь 17, 2019 г.

Полезное ноу-хау для тех кто пользуется jQuery. Функция $.each() производит перебор элементов по порядку, но иногда требуется выполнить операции в обратном порядке. jQuery ничего не предлагает для реализации нашей задачи, но это и не требуется, ...

Читать
 

Комментарии к «Инициировать скачивание файла без обращения к серверу, используя js»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: