Ciekawy atrybut download w HTML5, czyli wymuś pobranie pliku zamiast jego otwierania | DailyWeb.pl - codziennie o sieci

Ciekawy atrybut download w HTML5, czyli wymuś pobranie pliku zamiast jego otwierania

Opublikowano 4 lata temu - 6


Pomimo tego, że niestety jeszcze nie wszystkie przeglądarki w pełni obsługują specyfikację HTML5, to można śmiało powiedzieć, że najważniejsi gracze dają sobie radę. Mówię tutaj o Chrome, Firefox czy Operze - gdyż jak sami wiecie Internet Explorer, mimo że wysoko w rankingu popularności, to służy tylko do pobrania tych pierwszych. Dzisiejszy przykład wcale nie łamie stereotypu miernej jakości IE, gdyż owiana złą sławą przeglądarka z dzisiejszym bohterem, atrybutem download - niestety sobie nie radzi.

Dzisiaj nieco powrót do korzeni bloga, czyli do tematów dla których pierwotnie ten blog powstał. Otóż chciałbym zaprezentować Wam może i nienajnowszy, ale mało popularny atrybut odsyłaczy (słynny <a href></a>), który może zdecydowanie rozwiązać kilka problemów związanych z udostępnianiem i pobieraniem plików. Jakie jest jego zastosowanie?

Za przykład niech posłuży słynny format .PDF. Aktualnie przeglądarki, te najpopularniejsze posiadają wbudowany czytnik,  w związku z tym, udostępniając plik np.:

<a href="ścieżka_do_pliku/jakiś_folder/plik.pdf">Plik PDF</a>

spowodujemy, że osoba która kliknie w odsyłacz, otworzy plik w karcie swojej przeglądarki. Gdy chce go pobrać na dysk, musi dodatkowo wyszukać opcji zapisania i dopiero pobrać. Biorąc przykład z życia, posiadam zainstalowanego iTunes + QuickTime. Gdy ktoś udostępnia mi plik w formacie muzycznym, zamiast pobrania go bezpośrednio na dysk, uruchamia się on w przeglądarce za sprawą QT, co jest dość frustrujące. Jak to w tele-zakupach mówią; dzięki atrybutowi download, od dzisiaj skończą się Twoje problemy! Umieszczając adres do pliku w parametrze, wymusimy pobranie pliku na dysk, zamiast jego otwarcia:

<a href="ścieżka_do_pliku/jakiś_folder/plik.pdf" download="Sugerowana nazwa pliku">Plik PDF</a>

Przykład:

Link do obrazka z parametrem download
Link do obrazka bez parametru download.

Zamieszczając w/w parametr i umieszczając w nim treść, spowodujemy że o takiej właśnie nazwie zostanie plik pobrany. Pozostaje jeszcze kwestia zgodności z przeglądarkami. Poniższy obrazek powinien rozwiać wszelkie wątpliwości. Jak nietrudno się domyślić, na zielono informacja o wspieraniu, na czerwono brak obsługi. IE i Safari, jedno i to samo bagno ;-)

zgodnosc

Zastosowanie dość wąskie, niemniej bardzo przydatna opcja. Jeden mały download w odsyłaczu, a tyle radości :-)