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

Javascript Jquery图像旋转木马使其成为圆形旋转木马,因此它是“;无限”;

Javascript Jquery图像旋转木马使其成为圆形旋转木马,因此它是“;无限”;,javascript,jquery,Javascript,Jquery,我有这个图像转盘,但我想让它循环,这样它将无限滚动我该如何修改这个代码,使它将这样做?如果可能的话,我如何使它自动滚动 HTML: 一些内容 一些内容 一些内容 一些内容 一些内容 一些内容 ..... $(函数(){ var阶跃=2; 无功电流=0; var最大值=$('my#u carousel ul li').size(); 可见var=2; 无功转速=200; var-liSize=331; var转盘高度=161; var ulSize=LISSIZE*最大值; var d

我有这个图像转盘,但我想让它循环,这样它将无限滚动我该如何修改这个代码,使它将这样做?如果可能的话,我如何使它自动滚动

HTML:


  • 一些内容
  • 一些内容
  • 一些内容
  • 一些内容
  • 一些内容
  • 一些内容
  • .....


$(函数(){
var阶跃=2;
无功电流=0;
var最大值=$('my#u carousel ul li').size();
可见var=2;
无功转速=200;
var-liSize=331;
var转盘高度=161;
var ulSize=LISSIZE*最大值;
var divSize=liSize*可见;
$('my#u carousel ul').css(“宽度”,ulSize+“px”).css(“左”,“当前*liSize”).css(“位置”,“绝对”);
$('我的旋转木马').css(“宽度”,divSize+“px”).css(“高度”,旋转木马高度+“px”).css(“可见性”,“可见”).css(“溢出”,“隐藏”).css(“位置”,“相对”);
$('.btnnext')。单击(函数(){
如果(当前+步长<0 | |当前+步长>最大-可见){return;}
否则{
电流=电流+阶跃;
$('my#carousel ul')。动画({left:-(liSize*current)},速度,null);
}
返回false;
});
$('.btnprev')。单击(函数(){
如果(当前-步长<0 | |当前-步长>最大-可见){return;}
否则{
电流=电流-阶跃;
$('my#carousel ul')。动画({left:-(liSize*current)},速度,null);
}
返回false;
});
});

您可以尝试以下方法:

$('.btnnext').click(function() { 
    if(current + step < 0 || current + step > maximum - visible) {
        current = maximum - step;
    }
    else {
        current = current + step;
    }

    $('#my_carousel ul').animate({left: -(liSize * current)}, speed, null);
    return false;
});

$('.btnprev').click(function() { 
    if(current - step < 0 || current - step > maximum - visible) {
        current = 0 + step;
    }
    else {
        current = current - step;
    }

    $('#my_carousel ul').animate({left: -(liSize * current)}, speed, null);
    return false;
});
$('.btnnext')。单击(函数(){
如果(电流+步长<0 | |电流+步长>最大值-可见){
电流=最大阶跃;
}
否则{
电流=电流+阶跃;
}
$('my#carousel ul')。动画({left:-(liSize*current)},速度,null);
返回false;
});
$('.btnprev')。单击(函数(){
如果(当前-步长<0 | |当前-步长>最大-可见){
电流=0+步进;
}
否则{
电流=电流-阶跃;
}
$('my#carousel ul')。动画({left:-(liSize*current)},速度,null);
返回false;
});

您可能需要对数字进行一些修改,但这应该会在每次重置当前值时重置它,而不管它位于旋转木马的末尾或开头。如果它在结尾,它应该跳到开头。如果是在开始,它应该循环到最大值(结束)。

您可以尝试以下方法:

$('.btnnext').click(function() { 
    if(current + step < 0 || current + step > maximum - visible) {
        current = maximum - step;
    }
    else {
        current = current + step;
    }

    $('#my_carousel ul').animate({left: -(liSize * current)}, speed, null);
    return false;
});

$('.btnprev').click(function() { 
    if(current - step < 0 || current - step > maximum - visible) {
        current = 0 + step;
    }
    else {
        current = current - step;
    }

    $('#my_carousel ul').animate({left: -(liSize * current)}, speed, null);
    return false;
});
$('.btnnext')。单击(函数(){
如果(电流+步长<0 | |电流+步长>最大值-可见){
电流=最大阶跃;
}
否则{
电流=电流+阶跃;
}
$('my#carousel ul')。动画({left:-(liSize*current)},速度,null);
返回false;
});
$('.btnprev')。单击(函数(){
如果(当前-步长<0 | |当前-步长>最大-可见){
电流=0+步进;
}
否则{
电流=电流-阶跃;
}
$('my#carousel ul')。动画({left:-(liSize*current)},速度,null);
返回false;
});
您可能需要对数字进行一些修改,但这应该会在每次重置当前值时重置它,而不管它位于旋转木马的末尾或开头。如果它在结尾,它应该跳到开头。如果是在开始,它应该循环到最大值(结束)。

您可以使用插件来完成此操作。你也可以使用插件。您现在正在使用的

希望这有帮助。

您可以通过使用插件来实现这一点。你也可以使用插件。您现在正在使用的


希望这能有所帮助。

我认为,如果已经有东西可用,您应该使用。如果已经有东西可用,那么写完整的代码和css是浪费时间的。我同意,但既然我已经有了除循环部分之外的自定义代码,那就不是真正的浪费时间。@AlphaMale:除非你试图了解它,而不是仅仅尝试发布一个站点。我想,如果已有可用的内容,则应使用。如果已经有东西可用,那么写完整的代码和css是浪费时间的。我同意,但既然我已经有了与循环部分分开工作的自定义代码,那就不是真正的浪费时间了。@AlphaMale:除非你试图了解它,而不是仅仅尝试发布一个站点。
$('.btnnext').click(function() { 
    if(current + step < 0 || current + step > maximum - visible) {
        current = maximum - step;
    }
    else {
        current = current + step;
    }

    $('#my_carousel ul').animate({left: -(liSize * current)}, speed, null);
    return false;
});

$('.btnprev').click(function() { 
    if(current - step < 0 || current - step > maximum - visible) {
        current = 0 + step;
    }
    else {
        current = current - step;
    }

    $('#my_carousel ul').animate({left: -(liSize * current)}, speed, null);
    return false;
});