Lightboxで画像拡大時にダウンロードリンクを設置する方法
Lightboxで画像拡大時にダウンロードリンクを設置したいと要望を受けた。もちろんリンクをクリックすると表示されている画像がダウンロードされるという仕様。JavaScript / jQueryで処理を追加しないといけないかと思ったが、もっと簡単な方法で対応できた。以下に実装方法をメモ。
サンプル
https://taitan916.info/sample/lightbox2/download/
画像拡大時、左下にダウンロードのリンクが表示され、クリックするとダウンロードされる筈。Chrome / Edge / Firefoxで動作した。
対応方法
ソースコード
<style>
img{
max-width: 200px;
}
</style>
<a href="../img/001.jpg" rel="lightbox" title="<a class='dl_link' href='../img/001.jpg' download>ダウンロード</a>">
<img src="../img/001.jpg">
</a>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/lightbox2@2.11.5/dist/js/lightbox.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/lightbox2@2.11.5/dist/css/lightbox.min.css" rel="stylesheet">
所感
.dl_link部分をCSSで調整すれば使っていけそう。
関連記事
-
-
formのinput="file"でディレクトリを選択させ、ディレクトリ内のファイルを全てアップロードする方法
フォームで複数のファイルをアップロードしたい場合、input="file"を複数 ...
-
-
LightboxをjQuery無しで実装できる「Luminous」の利用方法
あるサイトのコーディングデータを貰った際、jQueryは使用していないのにLig ...
-
-
PHPでjpg / png画像をWebP画像に変換し保存する方法
PHPでjpg / png画像を圧縮したかった。ただjpg / pngのままだと ...
-
-
画像をアップロードすると複数サムネイルを生成する方法
フォームで画像をアップロードすると、予め定めておいた大中小のサイズでサムネイル画 ...
-
-
JavaScriptで画像読み込み完了のタイミングを検知する「imagesLoaded」ライブラリの利用方法
大き目のサイズの画像をページに設置すると読み込み完了まで時間がかかる。その画像が ...