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 回答