Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何访问bxSlider中的最后一张幻灯片?_Html_Jquery_Css - Fatal编程技术网

Html 如何访问bxSlider中的最后一张幻灯片?

Html 如何访问bxSlider中的最后一张幻灯片?,html,jquery,css,Html,Jquery,Css,我有一台bxSlider。我希望在到达最后一张幻灯片时,下一个控件应该隐藏。我使用infiniteLoop来阻止循环回到第一张幻灯片。使用“hideControlOnEnd”也会隐藏以前的控件,但我想保留它。如何实现这一功能?有没有直接的方法来实现这一点,而不是编写长代码行 滑块配置- $slider = $('.slider').bxSlider({ pager: false, auto: true, moveSlides: 4,

我有一台bxSlider。我希望在到达最后一张幻灯片时,下一个控件应该隐藏。我使用infiniteLoop来阻止循环回到第一张幻灯片。使用“hideControlOnEnd”也会隐藏以前的控件,但我想保留它。如何实现这一功能?有没有直接的方法来实现这一点,而不是编写长代码行

滑块配置-

$slider = $('.slider').bxSlider({

        pager: false,
        auto: true,
        moveSlides: 4, 
        minSlides: 4,
        maxSlides: 4,
        auto:false,
        infiniteLoop:false
})
我正在尝试类似的东西-

function onSliderLoad (){
    $(document).on('click','.bx-next', function() {
        var current_slide = $slider.getCurrentSlide();
        //console.log(current_slide);
        var slide_count = $slider.getSlideCount();
        //console.log(slide_count);
        if (current_slide == slide_count){
        
            $('.bx-next').addClass('disabled');
        }
       });
    
}
我在单击“下一步”按钮时调用此函数。我总共有6张幻灯片。当前幻灯片返回我1。逻辑不正确。有人能提出解决方案吗

提前谢谢

编辑:在中找到了更好的解决方案-https://stackoverflow.com/questions/14122047/bxslider-get-first-and-last-slide


这帮助我达到了预期的效果。

试试这样的方法

onSliderLoad: function (){
    slider = $('.slider').bxSlider();
    var slide_count = slider.getSlideCount();
    var slide_curr = slider.getCurrentSlide();
}

if (slide_curr == slide_count-1){
    $('.bx-prev').addClass('disable');
}

您好,不知什么原因。getSlideCount()和getCurrentSlide始终给我相同的值。我在单击下一个箭头时调用onSliderLoad函数-slider=$('.slider').bxSlider(config)$('.bx next')。单击(函数(){onSliderLoad();});函数onSliderLoad(){var slide\u count=slider.getSlideCount();var slide\u curr=slider.getCurrentSlide();if(slide\u curr==slide\u count){$('.bx next')。addClass('disable');}我有6张幻灯片。到达第6张幻灯片后,下一个控件应消失。如果我一次移动一张幻灯片,getCurrentSlide不应返回6。我做错了什么?您是否也有用于onSlideAfter和onSlideBefore的函数?如果没有,你应该拥有它们。在这两个函数中,您需要获取当前幻灯片和整个计数器,并更新insertCount(幻灯片当前,幻灯片计数);我不知道该怎么做。我已将我的代码包括在问题中。你能帮忙吗?