Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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_Carousel - Fatal编程技术网

Javascript jQuery旋转木马滚动

Javascript jQuery旋转木马滚动,javascript,jquery,carousel,Javascript,Jquery,Carousel,我刚从教程中删去了这个脚本。它做了我需要的一切-在多个幻灯片和可选的“当前”的步骤 但是,它确实存在一个错误,即如果该步骤的幻灯片少于该步骤的数量,则它将根本不执行该步骤 <script language="javascript"> jQuery(function() { var step = 8; var current = 10; var maximum = jQuery('#thumb-nav-inner ul li').size(); v

我刚从教程中删去了这个脚本。它做了我需要的一切-在多个幻灯片和可选的“当前”的步骤

但是,它确实存在一个错误,即如果该步骤的幻灯片少于该步骤的数量,则它将根本不执行该步骤

<script language="javascript">
jQuery(function() {
    var step = 8; 
    var current = 10; 
    var maximum = jQuery('#thumb-nav-inner ul li').size(); 
    var visible = 8; 
    var speed = 500; 
    var liSize = 114;
    var carousel_height = 93;


    var ulSize = liSize * maximum;   
    var divSize = liSize * visible;  

    jQuery('#thumb-nav-inner ul').css("width", ulSize+"px").css("left", -(current * liSize)).css("position", "absolute");

    jQuery('#thumb-nav-inner').css("width", divSize+"px").css("height", carousel_height+"px").css("visibility", "visible").css("overflow", "hidden").css("position", "relative"); 

    jQuery('#right-thumb-scroll').click(function() { 
        if(current + step < 0 || current + step > maximum - visible) {return; }
        else {
            current = current + step;
            jQuery('#thumb-nav-inner ul').animate({left: -(liSize * current)}, speed, null);
        }
        return false;
    });

    jQuery('#left-thumb-scroll').click(function() { 
        if(current - step < 0 || current - step > maximum - visible) {return; }
        else {
            current = current - step;
            jQuery('#thumb-nav-inner ul').animate({left: -(liSize * current)}, speed, null);
        }
        return false;
    });
});

jQuery(函数(){
var阶跃=8;
无功电流=10;
var max=jQuery(“#拇指导航内部ul li”).size();
可见var=8;
无功转速=500;
var-liSize=114;
变量转盘高度=93;
var ulSize=LISSIZE*最大值;
var divSize=liSize*可见;
jQuery('#thumb nav inner ul').css(“宽度”,ulSize+“px”).css(“左”,“当前*liSize”).css(“位置”,“绝对”);
jQuery(“#拇指导航内部”).css(“宽度”,divSize+“px”).css(“高度”,转盘高度+“px”).css(“可见性”,“可见”).css(“溢出”,“隐藏”).css(“位置”,“相对”);
jQuery(“#右拇指滚动”)。单击(函数(){
如果(当前+步长<0 | |当前+步长>最大-可见){return;}
否则{
电流=电流+阶跃;
jQuery('#thumb nav internal ul')。动画({left:-(liSize*current)},速度,null);
}
返回false;
});
jQuery(“#左拇指滚动”)。单击(函数(){
如果(当前-步长<0 | |当前-步长>最大-可见){return;}
否则{
电流=电流-阶跃;
jQuery('#thumb nav internal ul')。动画({left:-(liSize*current)},速度,null);
}
返回false;
});
});

有人能帮忙修理这个吗


谢谢大家

尚未对此进行测试,但我认为错误在于
current+step>maximum-visible
current-step>maximum-visible
。如果可用的项目少于应该可见的项目,它将始终返回true,因此不会返回step!您应该为这些情况计算最小值和最大值,应该是
Math.min(maximum,maximum-visible)

是的,这是有意义的,我正在查找,但我不确定如何进行这些jquery计算-您能帮我吗?干杯