5

文字列をtxtファイルとして保存でき、クロスブラウザで動作するJavaScriptライブラリはありますか?

過去にDownloadifyを使用していましたが、いくつかの理由で別のオプションを検討しています。

  • Flashを必要とせずに純粋なJavaScriptソリューションを見つけたいと思っています
  • Downloadifyはもう更新されていないようです(過去18か月間は更新されていません)
  • IE 9のDownloadifyで、文字列が途切れる問題が発生しています。
4

2 に答える 2

8

これがあなたが必要とするものです。しかし、それはまだクロスブラウザではありません。GoogleChromeで動作します。

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

また、ウィキペディアにはデータURIに関する優れた記事があります

于 2012-02-27T11:24:51.057 に答える
6

私の知る限り、唯一の方法はデータを使用することです。URLを使用してダウンロードを強制します。

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

ここで2つのキャッチ:

  • データをサポートしているため、MSIEでは機能しません。URLは非常に制限されています(おそらくセキュリティ上の理由から)。したがって、Downloadifyが必要になります。
  • ファイル名を指定することはできません。推奨されるファイル名は、使用するブラウザによって異なります。また、ファイルタイプは「不明」になります(ブラウザがファイルのダウンロードを提供しないため、既知のMIMEタイプを使用することはできません)。

ボーナスリーディング:2010年2月に2番目の問題の修正に関するW3.orgの議論がありました:http://lists.w3.org/Archives/Public/uri/2010Feb/thread.html#msg58。ただし、これまでのところ、ブラウザの実装は言うまでもなく、仕様には含まれていないようです。

于 2011-06-24T09:15:37.560 に答える