jquery ライトボックスを使用して、load() を使用してページに読み込まれた写真を表示しようとしています。私のコードは次のとおりです。
$('#content').on('click', 'a.thumb_link', function(){
$('a.thumb_link').lightBox();
return false;
});
これは、リンクを 2 回クリックした場合にのみ機能します。
私は当惑しています。提供された2つの回答が機能しなかったのはなぜですか?
最後に、読み込まれたページ内に JS を含めて、スクリプトが他のコンテンツと一緒にページに読み込まれるようにすることで、なんとか機能させることができました。
これはトリックをしました:
$('a.thumb_link').lightBox();
のようなことはできませんか
$('#content').live('click', function()
{
$('a.thumb_link').lightBox();
return false;
}
使用する例としてより多くのコードがあれば、より良い解決策を提供できるかもしれませんが、コンテンツが何であるかを想定してストローをつかむことしかできません。クラスとのリンクthumb_link
これが私の完全なコードです:
ロードされた.php
<a class="thumb_link" href="../members/21000_21999/21659/21659-1.jpg">
<img src="../members/21000_21999/21659/21659-1.jpg"></a>
<a class="thumb_link" href="../members/21000_21999/21659/21659-3.jpg">
<img src="../members/21000_21999/21659/21659-3.jpg"></a>
test.php
<!doctype html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Test</title>
<link rel="stylesheet" type="text/css" href="css/jquery.lightbox-0.5.css" media="screen" />
<script src="js/jquery.js"></script>
<script src="js/jquery.lightbox-0.5.js"></script>
<body>
<a class="link" href="../members/21000_21999/21659/21659-1.jpg">
<img src="../members/21000_21999/21659/21659-1.jpg">
</a>
<a class="link" href="../members/21000_21999/21659/21659-3.jpg">
<img src="../members/21000_21999/21659/21659-3.jpg">
</a>
<div id="content"></div>
<script>
$(document).ready(function(){
$('a.link').lightBox();
$('#content').load('loaded.php');
$('#content').on('click', 'a.thumb_link', function(){
$('a.thumb_link').lightBox();
return false;
});
});
</script>
</body>
</html>
test.php で直接コーディングされている上位 2 つの画像は、画像を 1 回クリックするだけで lightBox を実行します。下の 2 つの読み込まれた画像は、2 回クリックしたときにのみ lightBox を実行します。
または、最初に一番上の画像をクリックしてから、読み込まれた画像をクリックすると (まだ 2 回クリックします)、読み込まれた画像は lightBox を実行します。
私は使用しています:jquery v1.7.1 jquery lightBox v0.5