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

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

[リソースのダウンロード] で、次の操作を行います。

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

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

a[download] の真のメリットは、blob: URLfilesystem: URL を操作する場合です。これにより、ユーザーはアプリ内で作成または変更したコンテンツをダウンロードできるようになります。

完全なデモ

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

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