1

私には解決できないトリッキーな問題があります。jquery.prettyphoto.js「ライトボックス」に一連の画像を表示するために使用しています。

そのセットの最初の写真は「AvatarPhoto」で、ページに 2 回レンダリングされます。最初に、単独で立って、他のすべての写真と一緒にスライダーに入れます。どちらも同じギャラリーの同じ写真にリンクしています。

これを見てください:http://jsfiddle.net/wtZLY/

わかりました、私は半分の答えに基づいてそれを解決しました。単に「allFotos」の最初のリンクにIDを付けました:

    $('#profilePicture').click(function() {
    $('#foto_0').click();
    });

でもプリティフォトAPIが使えないのかな

$.prettyPhoto.open()

prettyPhoto[gallery1]しかし、ページを下に開くだけの可能性はないようです。すべての画像とタイトルを配列として渡す必要があり、私の場合、これを繰り返すのは大変です。

4

1 に答える 1

1

セレクターはこの属性で機能します:

data-rel="prettyPhoto[gallery1]"

最初の画像をギャラリーに追加する意図がない場合は、data-relその画像から属性を削除すると、機能します。

個人的には、これには標準のタグ/ID/クラスを使用します。JSでは、代わりにこれを使用できます。

$("#allpictures a").prettyPhoto();

allpicturesこれにより、要素の子孫であるすべてのリンクが選択されます。

補遺:プロフィール写真を使用してギャラリーを開きたい場合は、ギャラリーアイテムに上記を使用することをお勧めしますが、プロフィールには特別なクリックハンドラーを用意してください。idプロフィール写真を使用してギャラリーのコピーを決定できるように、画像ごとにを設定します。たとえば、とを使用できprofile_123ますgallery_123

これにより、プロファイル画像にクリックハンドラーを追加しid、ギャラリーコピーのを派生させ、その要素でクリックイベントを発生させることができます。

于 2013-01-29T23:48:13.143 に答える