使用jquery访问图像的src属性

时间:2012-02-27 11:47:58

标签: jquery bxslider

我正在关注这个例子:

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');

但我未定义!

谢谢!

6 个答案:

答案 0 :(得分:5)

查看API

onBeforeSlide / onAfterSlide都使用下面的相同签名,您可以在第3个参数中访问幻灯片对象。您可以从

获取幻灯片内容的详细信息
function(currentSlideNumber, totalSlideQty, currentSlideHtmlObject){
  // perform actions here
}

答案 1 :(得分: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);

答案 2 :(得分:1)

获取任何jquery元素的属性,您可以使用:

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

在你的情况下,像这样......

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

甚至更重要的是:

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

你必须自己找到最优雅的方式,但是建议使用.attr(attrName)的所有答案都是正确的,你只需要找到正确的元素选择器。

答案 3 :(得分:1)

这将取决于你的实际html标记,但假设你使用li元素创建幻灯片,那么下面应该做的技巧(slider1是容器ol / ul id)

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

基本上,我们使用索引(currentSlide - 1)找到slide(li)元素,然后在幻灯片中查找图像以获取其source属性。现在,如果幻灯片中有多个图像,则上面的图像可能无法正常工作。

答案 4 :(得分:0)

试试这可能会对你有所帮助

document.getElementById("currentSlide_id").src;



var src= $('currentSlide_id').attr('src')

答案 5 :(得分:0)

怎么样

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

在链接的示例中,这将是

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