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で調整すれば使っていけそう。
関連記事
-
-
javascriptやjQueryで画像を書き換えても変わらない場合
けっこう前に画像をアップロードしてリアルタイムにプレビューする機能を作った時に、 ...
-
-
summernoteにギャラリーから画像を挿入する機能を追加する方法
summernoteの画像機能はデフォルトだと「画像ファイルを選ぶ」「URLから ...
-
-
PHPで画像を上下反転させ保存する
やりたかった事は、下記の通り。 ・既にフォルダに保存されている画像を上下反転させ ...
-
-
faviconをサイトURLもしくはpngファイルから生成する方法
AというサイトのfaviconをBというサイトで使いたかった。ただ、favico ...
-
-
lazyload.js等のライブラリを使わずHTMLのみで画像の遅延読み込みを行う方法
画像を遅延読み込みさせるとなるとだいぶ前に書いたlazyload.jsを用いる方 ...