ページに表示されている4つのイメージのいずれかをクリックすると、fancyboxウィンドウに読み込まれるようにfancyboxをカスタマイズしようとしています。jquery .click関数を使用してfancyboxを呼び出す
これを行うには、jquery .attr関数を使用してイメージsrc(変数として)をメインイメージホルダーに渡します。
私の現在のjqueryのコードは次のとおりです。
jQuery(document).ready(function($) {
$("a.group").click(function() {
var image = $(this).attr("name");
$("#largeId").attr({ src: image});
$("a.group").fancybox({
'frameWidth':966,
'frameHeight': 547,
'hideOnContentClick': false,
'overlayOpacity': 0.85,
'callbackOnShow': function() {
$("#container ul#thumbnails li a").click(function(){
var largePath = $(this).attr("title");
$("#largeId").fadeOut("fast").hide();
$("#largeId").attr({ src: largePath });
$("#largeId").fadeIn("slow");return false;
});
$("#container ul#thumbnails li a").click(function(){
$('.active').removeClass('active');
$(this).addClass("active");
});
}
});
});
});
メインページ画像のためのHTMLは次のとおりです。Fancyboxウィンドウの
<ul id="images">
<li><a id="one_image" class="group" href="#hidden" title="images/1_large.jpg"><img src="Images/1.jpg" alt="MOMA NY #1" title="MOMA NY #1" /></a></li>
<li><a class="group" href="#hidden" title="images/2_large.jpg"><img src="Images/2.jpg" alt="MOMA NY #2" title="MOMA NY #2" /></a></li>
<li><a class="group" href="#hidden" title="images/3_large.jpg"><img src="Images/3.jpg" alt="MOMA NY #3" title="MOMA NY #3" /></a></li>
<li><a class="group" href="#hidden" title="images/4_large.jpg"><img src="Images/4.jpg" alt="MOMA NY #4" title="MOMA NY #4" /></a></li>
</ul>
:
<div id="main_image">
<img id="largeId" src="" alt="" title="" />
</div>
----- - EDIT ----------
ちょうどあなたが知っているように、これは主に私が最初にクリック機能を取り除くと機能し、ファンシーボックス内の機能はすべてうまく動作します。
そうでもありません! Fancybox関数の残りの項目はウィンドウサイズを制御し、モーダルウィンドウ内で機能するように関数を呼び出す必要があります。 – DanC
私はかなりあなたがURLのGETパラメータのすべてを制御できることを確かめています。私は上記の例を追加しました。 – Jesta