わかりましたので、少しjqueryを使用し<a>
てページ上のすべてのタグを選択し、それらが画像ファイルにリンクしている場合zoom
は、ライトボックスの目的でそれにクラスを追加しました。これは動作するコードです
$(document).ready(function () {
$('a[href*=".png"], a[href*=".gif"], a[href*=".jpg"]').addClass('zoom');
});
ただし、これには問題があります。
別のページに移動するだけのリンクがあるとしますが、URL の GET 変数として画像の URL を渡します。この結果、ライトボックスがアクティブになり、リンクが実際には画像ではないため失敗します。例えば:
<a href="http://example.com/a-normal-page/?pic=http://example.com/pics/picture.jpg">Link text</a>
上記の例では、jQuery スクリプトは、実際には画像にリンクしていなくても、zoom クラスをこのアンカーに追加します。ライトボックスが表示される前にページを離れてリンク先に移動するため、これは通常問題になりませんが、新しいタブ/ウィンドウが開かれると、失敗したライトボックスが表示されます。
これは、リンク内で画像の URL を渡す Pinterest などのソーシャル メディア ボタンで特によく見られます。
[タイトルについてお詫び申し上げます - どのように表現すればよいかわかりませんでした。より適切なものに自由に編集してください]