0

jQuery Cycle で構築されたコンテンツ ローテーターがあり、それに jQuery Fancybox を追加しようとしています。

HTML:

<div class="secRotatorSlide">
    <a href="" class="iframe enlargePic">Enlarge</a>
    <img class="slideImg" src="secRotatorImg/slide1.png" alt="Slide 1" />
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
</div>

上記の HTML のセットが複数あります。すべて正常に回転しています。

jQuery:

jQuery('.secRotatorSlide').find('.slideImg').each(function() {
    var iframeSrc = jQuery(this)[0].src;
    //alert(iframeSrc)
    jQuery('a.enlargePic').attr('href', iframeSrc);    
});

href を設定する行をコメントアウトし、アラート行のコメントを外すと、すべての src に次々と正しくアラートが送信されます。そのままにしておくと、最後の html セットから画像 src を取得し、それをすべての html セットのすべての href に適用します。

私は何を間違っていますか?jQueryの最後の行にあると思いますが、よくわかりません。私はthisその最後の行で使用しようとしましたが、それはまったく何もしません。

4

2 に答える 2

1
jQuery(this).prev('a.enlargePic').attr('href', iframeSrc);

セレクターa.enlargePicは、特定のクラスを持つ DOM 内のすべてのリンクを選択します。を使用して、現在の画像の隣にあるもののみをターゲットにします.prev()

于 2013-09-26T19:29:02.820 に答える