HTML5 でのリソースのダウンロード - a[ダウンロード]

Chrome で、a 要素に対して HTML 仕様の新しい download 属性がサポートされるようになりました。この属性を使用すると、参照先のリソースは、ブラウザに移動するのではなくダウンロードされることになります。

リソースのダウンロードから:

たとえば、次のリンクをクリックすると、.png が「MyGoogleLogo.png」としてダウンロードされます。href 値に移動するのではなく、「download me」と入力します。このマークアップは次のとおりです。

<a href="http://web-central.appspot.com/.../web-fundamentals-icon192x192.png" download="WebfundamentalsLogo">download me</a>

a[download] の本当の利点は、blob: URLfilesystem: URL の URL を扱う場合です。 アプリ内で作成または変更されたコンテンツをユーザーがダウンロードできるようにする。

完全なデモ

上記の例では、画像はウェブサイトに関して同じ生成元を持っています。別の出所の画像へのリンクを使用しようとすると、ダウンロード リンクではなく移動リンクとして機能しないことがあります。これは、クロスオリジン ファイルのダウンロード ポリシーが、ブラウザの多くのバージョンでサポートされていないためです。たとえば、65 より前のバージョンの Chrome ではクロスオリジン ファイルのダウンロードが可能でしたが、それ以降のバージョンではサポート終了となりました。詳しくは、こちらをご覧ください。Content-Disposition ヘッダーを使用して、他のオリジンからのダウンロードを強制できます。

ブラウザのサポート: この属性をサポートしているのは、現在の Chrome Dev チャンネル リリース(14.0.835.15 以降)のみです。