Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.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
Javascript 使用递增/递减的jQuery图像滑块_Javascript_Jquery_Slider_Counter_Increment - Fatal编程技术网

Javascript 使用递增/递减的jQuery图像滑块

Javascript 使用递增/递减的jQuery图像滑块,javascript,jquery,slider,counter,increment,Javascript,Jquery,Slider,Counter,Increment,我正在尝试创建一个滑块,该滑块使用递增/递减来移动,然后根据行中的最大图像数隐藏或显示按钮。它在一个div中使用一个div,隐藏的溢出应该一直移动,直到达到最大图像数为止,这时箭头应该被隐藏,这样用户就不能继续进入溢出创建的空白区域。但是,隐藏/显示不起作用,用户可以继续递增,因为即使达到最大图像数,箭头仍然可见 当左箭头和右箭头分别指向相应的数字时,如何使其隐藏 编辑:我知道.css是乱七八糟的,我只想让箭头先隐藏/显示,谢谢 var pressCounter = 0; var max

我正在尝试创建一个滑块,该滑块使用递增/递减来移动,然后根据行中的最大图像数隐藏或显示按钮。它在一个div中使用一个div,隐藏的溢出应该一直移动,直到达到最大图像数为止,这时箭头应该被隐藏,这样用户就不能继续进入溢出创建的空白区域。但是,隐藏/显示不起作用,用户可以继续递增,因为即使达到最大图像数,箭头仍然可见

当左箭头和右箭头分别指向相应的数字时,如何使其隐藏

编辑:我知道.css是乱七八糟的,我只想让箭头先隐藏/显示,谢谢

var pressCounter = 0;
    var maxImgCounter = $('.carousel-image').length; // gain the max amount of images
    var maxSlide = maxImgCounter - 4;// - the amount of images visible on the screen so it does notshow white space

    if ( pressCounter < maxSlide){
        $('#right').show();
    }else{
        $('#right').hide();
    }
    if (pressCounter > 0){
        $('#left').show();
    }else{
        $('#left').hide();
    }

    /* Left arrow */
    $('#left').click(function(){
        $( '.slide' ).css({
            "position": "relative",
            "right": -280 * pressCounter
        });
        pressCounter--;
        return pressCounter; 
    });
    /* Right arrow */
     $('#right').click(function(){
         $( '.slide' ).css({
            "position": "relative",
            "right": 280 * pressCounter
         }); 
         pressCounter++;
         return pressCounter;
         });
var pressconter=0;
var maxImgCounter=$('.carousel image').length;//获得最大数量的图像
var maxSlide=最大计数器-4;//-屏幕上可见的图像数量,因此不会显示空白
如果(按计数器<最大滑动){
$(“#右”).show();
}否则{
$(“#右”).hide();
}
如果(按计数器>0){
$(“#左”).show();
}否则{
$(“#左”).hide();
}
/*左箭头*/
$('#左')。单击(函数(){
$('.slide').css({
“位置”:“相对”,
“右”:-280*按计数器
});
按计数器--;
返回计数器;
});
/*右箭头*/
$('#right')。单击(函数(){
$('.slide').css({
“位置”:“相对”,
“右”:280*按计数器
}); 
按计数器++;
返回计数器;
});
if(按计数器0){
$(“#左”).show();
}否则{
$(“#左”).hide();
}

考虑当该值小于maxslide且presscounter大于零时会发生什么情况。在很大程度上,这个条件在您编写它的方式中总是正确的,因此每次都会触发两个if语句——一个接一个。结果是,您的左箭头和右箭头将始终显示-允许用户不断单击最后一张幻灯片。

您需要将检查代码放入函数中,并在每次更改计数器时调用它。另外请注意:从
单击事件返回
按计数器
不会有任何用处(除了在您点击0时禁用任何点击)@gonecoding再见!对不起,语言是:/
   if ( pressCounter < maxSlide){
        $('#right').show();
    }else{
        $('#right').hide();
    }
    if (pressCounter > 0){
        $('#left').show();
    }else{
        $('#left').hide();
    }