Страницы

Поиск по вопросам

понедельник, 8 октября 2018 г.

Отдача файла на скачивание

Можно ли не используя серверную часть, а jQuery, не открывать изображение, а сразу отдать его на скачивание?


Ответ

Без использования серверной части нужное вам действие можно реализовать, используя атрибут download
Скачать изображение
Подробнее про атрибут download читайте тут
Поддержку браузерами можно увидеть тут

Если нужно решение именно на js/jQuery, можно копнуть в сторону DownloadJS и ему подобных готовых решений.
Пример работы:
window.downloadFile = function(sUrl) { //iOS devices do not support downloading. We have to inform user about this. if (/(iP)/g.test(navigator.userAgent)) { alert('Your device does not support files downloading. Please try again in desktop browser.'); return false; } //If in Chrome or Safari - download via virtual link click if (window.downloadFile.isChrome || window.downloadFile.isSafari) { //Creating new link node. var link = document.createElement('a'); link.href = sUrl; if (link.download !== undefined) { //Set HTML5 download attribute. This will prevent file from opening if supported. var fileName = sUrl.substring(sUrl.lastIndexOf('/') + 1, sUrl.length); link.download = fileName; } //Dispatching click event. if (document.createEvent) { var e = document.createEvent('MouseEvents'); e.initEvent('click', true, true); link.dispatchEvent(e); return true; } } // Force file download (whether supported by server). if (sUrl.indexOf('?') === -1) { sUrl += '?download'; } window.open(sUrl, '_self'); return true; } window.downloadFile.isChrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1; window.downloadFile.isSafari = navigator.userAgent.toLowerCase().indexOf('safari') > -1; Скачать картинку
Еще несколько вариантов:
File downloading using client-side JavaScript jQuery File Download How to force download a file with JavaScript Download Files with JavaScript

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

Отправить комментарий