質問: 1; i <= 13; i++) { document.getElementById("lightgallery").insertAdjacentHTML('beforeend', '' + '' + ''); }}, false); ``` Chromeでの動作は確認できたのですがSafariでは仕様らしいのですが動作しません。 そこで、Safariでも強制的にダウンロードさせたい場合はどうすれば良いのでしょうか。 ###### 追記 ファイル名は変動するのでファイル名での指定はできればしたくありません。 aタグにはid:downloadが振り当ててあります。
回答: たとえば、別の方法として、サーバー側でデータを送信する際に、ダウンロードさせるように指定できます。 mimetypeとか言ったりしますね。つまり普段は サーバー「これは画像ファイルだぞー!!」 ブラウザ「ありがとう!ブラウザの画面に表示しとくぜー!」 ってのを、 サーバー「これ画像ファイルじゃないからな!!絶対に違うからな!」 ブラウザ「え?でもこれ拡張子がjpgだけど...。まあいっか、サーバーがそういうならそうなんだろう!とりあえずダウンロードしとこう!」 ってさせることです。 サーバーによって方法が違うのですが、だいたいmimetypeが書いてるファイルのjpgやpng等の該当する拡張子の行を消せば対応できます。でもそうするとすべての画像をダウンロードしてしまうので、専用のサーバーを用意する必要があります。