2011-06-24 11 views
5

Czy istnieje biblioteka JavaScript, która umożliwia zapisywanie ciągów jako plików txt i działa w różnych przeglądarkach?Zapisywanie w różnych przeglądarkach jako .txt

W przeszłości I zostały z wykorzystaniem Downloadify, ale szukam w innym rozwiązaniem dla kilku powodów:

  • Mam nadzieję znaleźć czystą rozwiązanie JavaScript, bez konieczności Flash
  • go wydaje się, że Downloadify nie jest aktualizowana anymore (brak aktualizacji w ciągu ostatnich 18 miesięcy)
  • ja doznaję problem z Downloadify w IE 9, gdzie łańcuchy są odcięte
+1

Krótka odpowiedź: nie. Dłuższa odpowiedź: wtyczki, podpisany javascript. Krzyżowa przeglądarka: nie bez lampy błyskowej – mplungjan

Odpowiedz

6

O ile mi wiadomo, jedynym sposobem jest użycie danych: adresy URL, aby wymusić pobieranie:

var data = "This is a test"; 
window.location.href = "data:application/x-download;charset=utf-8," + encodeURIComponent(data); 

Dwa zaczepy tutaj:

  • To nie będzie działać w MSIE, ponieważ jego obsługa danych : Adresy URL są bardzo ograniczone (podobno for security reasons). Więc nadal będziesz potrzebować Downloadify.
  • Nie można podać nazwy pliku, sugerowana nazwa pliku będzie zależeć od używanej przeglądarki. Typ pliku będzie "nieznany" (nie można użyć znanego typu MIME, ponieważ przeglądarka nie zaoferuje następnie pobrania pliku).

Premia lektorska: w lutym 2010 r. Odbyła się dyskusja W3.org o rozwiązaniu drugiego problemu: http://lists.w3.org/Archives/Public/uri/2010Feb/thread.html#msg58. Wydaje się jednak, że nie znalazło się ono w żadnej specyfikacji do tej pory, nie mówiąc już o implementacjach przeglądarki.

8

Here is czego potrzebujesz. Ale to jeszcze nie jest przeglądarka. Działa w Google Chrome.

<a download="MyFile.txt" 
    href="your-data-uri-here" 
    draggable="true" 
    class="dragout" 
>Download ready</a> 

Również Wikipedia ma dobre article about Data URI

Powiązane problemy