2

jqueryオプションではなく、htmlでギャラリーを手動で呼び出してfancyboxを開くにはどうすればよいですか?

これは、ギャラリーを手動で開くという質問に答えます。

ただし、ギャラリーで特定の画像を開きたい場合はどうすればよいでしょうか? ギャラリー リスト内の任意の画像を指定できます。それを行う方法はありますか?

私はこれを試しました

$("#launcher").on("click", function(){
 $(".fancybox.default").eq(0).trigger("click");
});

ここで、表示したい画像の「デフォルト」クラスを追加します。

しかし、実行すると、その画像が表示されますが、ギャラリーの次/前のボタンがありません。

4

2 に答える 2

2

フォーカスしたい要素のクリックをシミュレートする必要があります。

JQuery では、.click関数 ( link ) を使用してこれを行うことができます。

グループの要素に焦点を当てた例を取り上げました。最初の方法では、グループの作成に使用した同じセレクターの fancybox を使用します。

<script>
    $(document).ready(function(){
        //get the group of your fancy elements
        var fancygroup = $("a[rel=example_group]");
        
        // get the element you want to focus (e.g the first element)
        var fancyelem = $(fancygroup.get(1));
        
        // simulate a click
        fancyelem.click();
    });
</script>

または、フォーカスしたい要素に ID を割り当てて、クリックをシミュレートすることもできます

<p>
    Image gallery (ps, try using mouse scroll wheel)<br />

    <a rel="example_group" href="./example/9_b.jpg" title="Lorem ipsum dolor sit amet"><img alt="" src="./example/9_s.jpg" /></a>

    <a rel="example_group" href="./example/10_b.jpg" title=""><img alt="" src="./example/10_s.jpg" /></a>

    <a id="initthis" rel="example_group" href="./example/11_b.jpg" title=""><img alt="" src="./example/11_s.jpg" /></a>
    
    <a rel="example_group" href="./example/12_b.jpg" title=""><img class="last" alt="" src="./example/12_s.jpg" /></a>
</p>

(3 番目の a 要素に割り当てられた ID

次に、要素を直接選択します。

<script>
    $(document).ready(function(){   
        $('#initthis').click();
    });
</script>

BR、ステファン

于 2012-09-13T08:00:09.593 に答える
0

$("#ID").click(function () { $("a[rel=gallerimages]").fancybox({ }).trigger('click'); });

于 2012-09-13T08:40:28.537 に答える