Jquery div滑块的限制宽度

Jquery div滑块的限制宽度,jquery,Jquery,尚未找到解决此问题的方法,已尝试了一些方法。。。 我有一个滑块脚本(在这里找到:)。工作很好,但我只是不能让滑块停止,当它在年底的div框。你可以永远滚动。 你能告诉我怎么修吗?还有比这更好的解决方案吗 谢谢大家! 快速修复您的代码: 但是jQuery有很多滑块解决方案。 我建议您使用一个: 我更新了脚本您可以使用一个变量跟踪单击情况: 在我的解决方案中,scrollTracker从1开始,单击右递增,单击左递减 $('#right-button').click(function() { sc

尚未找到解决此问题的方法,已尝试了一些方法。。。 我有一个滑块脚本(在这里找到:)。工作很好,但我只是不能让滑块停止,当它在年底的div框。你可以永远滚动。 你能告诉我怎么修吗?还有比这更好的解决方案吗

谢谢大家!

快速修复您的代码:

但是jQuery有很多滑块解决方案。 我建议您使用一个:

我更新了脚本

您可以使用一个变量跟踪单击情况:

在我的解决方案中,scrollTracker从1开始,单击右递增,单击左递减

$('#right-button').click(function() {
scrollTracker++;
...
$('#left-button').click(function() {
scrollTracker--;
当您开始scrollTracker为1且不想显示左滚动时:

scrollTracker > 1 ? leftButton.show() : leftButton.hide();
当结束滚动时,将显示最大帧(totalFrames=$('.column')。在本例中为长度),并隐藏右滚动:

scrollTracker < totalFrames ? rightButton.show() : rightButton.hide();
scrollTracker

开始时,每次单击时,都会更新滚动条的可见性。

将下面的代码替换为js代码,并将根据您的要求运行

var保证金总额=0;
$(“#右键”)。单击(函数(){
如果(总边距>-900){
$(“#框”)。设置动画({
边缘左侧:“-=450”
}“快”);
保证金总额=保证金总额-450;
console.log(总边距);}
});
$(“#左按钮”)。单击(函数(){
如果(总利润<0){
$(“#框”)。设置动画({
边缘左侧:“+=450”
}“快”);
保证金总额=保证金总额+450;
console.log(总边距);}
});

我添加了3个参数:curren当前页面;向左滚动时的最大值;rightMax—向右滚动时的最大值: 下面是一个工作示例:

var leftMax=0;
var rightMax=-2*450;
var currrent=0;
$('#right-button').click(function() {
    currrent=currrent-450;
    if(currrent<rightMax) currrent=rightMax;
    $('#box').animate({
    marginLeft: currrent
    }, "fast");
});
$('#left-button').click(function() {
    currrent=currrent+450;
    if(currrent>leftMax) currrent=leftMax;
    $('#box').animate({       
     marginLeft: currrent
    }, "fast");
});
var leftMax=0;
var rightMax=-2*450;
var current=0;
$(“#右键”)。单击(函数(){
current=current-450;
如果(CurrentLeftMax)current=leftMax;
$('#box')。设置动画({
保证金左:现金
}“快”);
});

ZenMaster的回答很好,不过我会更动态地回答。通过:var max=$('.column').length,根据其中的列类数量设置最大帧数;它工作正常:,只需用$('.column').length替换框架的数量;看一看谢谢你的帮助!我使用了rogal111的解决方案,但你的解决方案也值得一想!非常感谢
var leftMax=0;
var rightMax=-2*450;
var currrent=0;
$('#right-button').click(function() {
    currrent=currrent-450;
    if(currrent<rightMax) currrent=rightMax;
    $('#box').animate({
    marginLeft: currrent
    }, "fast");
});
$('#left-button').click(function() {
    currrent=currrent+450;
    if(currrent>leftMax) currrent=leftMax;
    $('#box').animate({       
     marginLeft: currrent
    }, "fast");
});