0

私はこの例に従っています:

http://bxslider.com/examples/perform-action-transition-callback

しかし、この例では、現在の画像からインデックス番号を取得できます。

私はこのコードを持っています:

 $('#preview_images_gallery').bxSlider({
                                        onAfterSlide: function(totalSlides, currentSlide){
                                                                                            var src = $('currentSlide').attr('src');
                                                                                            $('.preview .bx-wrapper .bx-window').append('<p class="check">' + src);
                                                                                         }
                                      });

現在の画像の src 属性を取得するにはどうすればよいですか?

私は書きます:

var src = $(currentSlide).attr('src');

しかし、私は未定義になります!

ありがとうございました!

4

6 に答える 6

5

API を確認する

onBeforeSlide / onAfterSlide はどちらも以下の同じシグネチャを使用し、3 番目のパラメーターでスライド オブジェクトにアクセスできます。スライド内容の詳細はこちらから

function(currentSlideNumber, totalSlideQty, currentSlideHtmlObject){
  // perform actions here
}
于 2012-02-27T11:53:19.753 に答える
1
var source = $('img').attr('src');

テストされておらず、あまり効率的ではありませんが、このようなものは機能する可能性があり、微調整が必​​要になる場合があります。

var images = [], source="";
$('#slider1').bxSlider({
    pager: true,
    onBeforeSlide: function(currentSlide, totalSlides){
       $('img', this).each(function() {
           images.push(this);
       });
       source = $(images[currentSlide]).attr('src');
    }
});
alert(source);

マクロが正しければ、次のようになります。

$('#slider1').bxSlider({
        pager: true,
        onBeforeSlide: function(currentSlide, totalSlides, SlideObject){
            source = SlideObject.attr('src');
        }
    });
    alert(source);
于 2012-02-27T11:49:47.607 に答える
1

任意の jquery 要素の属性を取得するには、これを使用できます。

$('.selector').attr(attrName);

あなたの場合、このようなもの...

$('.slider1 .left').find('img').attr('src');

またはさらに要点:

jQuery('#slider1').find('li.pager:nth-child(currentSlide)').attr('src');

自分で最もエレガントな方法を見つける必要がありますが、使用を示唆するすべての答え.attr(attrName)は正しいです。正しい要素セレクターを見つけるだけです。

于 2012-02-27T11:52:47.180 に答える
1

実際のhtmlマークアップに依存しますがli、スライドを作成するために要素を使用していると仮定すると、以下のトリックを実行する必要があります(slider1はコンテナのol / ul idです)

$($('#slider1 li')[currentSlide - 1]).find('img').attr('src');

基本的に、インデックス (currentSlide - 1) を使用してスライド (li) 要素を検索し、スライド内の画像を検索してそのソース属性を取得します。現在、スライド内に複数の画像がある場合、上記が期待どおりに機能しない場合があります。

于 2012-02-27T11:55:34.073 に答える
0

これを試してみてください

document.getElementById("currentSlide_id").src;



var src= $('currentSlide_id').attr('src')
于 2012-02-27T11:53:36.530 に答える
0

どうですか

$('#sliderContainer').children().eq(currentSlide).find('img').attr('src')

リンクされた例では、これは次のようになります

$('#slider1').children().eq(currentSlide).find('img').attr('src')
于 2012-02-27T11:56:20.287 に答える