Jquery 创建增量按钮,当边距大于2800像素时关闭
我在做一个滑块,我想弄清楚我是如何专门编程一个按钮的 我希望它在点击时以700像素的增量向左移动,但是一旦marginLeft大于2800像素,它就不会在点击时做任何事情 现在我有一个部件,它以增量移动容器,但我不确定如何使在“slider_container”的边距大于2800 px后它什么也不做的部件Jquery 创建增量按钮,当边距大于2800像素时关闭,jquery,Jquery,我在做一个滑块,我想弄清楚我是如何专门编程一个按钮的 我希望它在点击时以700像素的增量向左移动,但是一旦marginLeft大于2800像素,它就不会在点击时做任何事情 现在我有一个部件,它以增量移动容器,但我不确定如何使在“slider_container”的边距大于2800 px后它什么也不做的部件 $("#left").click(function () { $("#slider_container").animate ({ marginLeft: "+=700p
$("#left").click(function () {
$("#slider_container").animate ({
marginLeft: "+=700px"
},450 );
});
我想知道为什么以下方法不起作用:
if ($("#slider_container").css("marginLeft") >= 2800) {
$("#right").click(function () {
$("#slider_container").animate ({
marginLeft: "-=0px"
},450 );
});
}
else
{
$("#right").click(function () {
$("#slider_container").animate ({
marginLeft: "-=700px"
},450 );
});
}
试试这个:
$("#left").click(function () {
var margin = parseInt($("#slider_container").css("marginLeft")),
move = Math.min(700, 2800 - margin);
if (move > 0) {
$("#slider_container").animate ({
marginLeft: "+=" + move + "px"
},450 );
}
});
在刚才添加到问题的代码中,需要将单击事件的
函数中的if
。另外,将动画设置为“-=0px”
,这有什么意义吗?好的,我已经开始工作了,下面是我提出的解决方案:
$("#right").click(function () {
if (parseInt($("#slider_container").css("marginLeft")) < -2100) {
$("#slider_container").animate ({
marginLeft: -2800
},450 );
}
else
{
$("#slider_container").animate ({
marginLeft: "-=700px"
},450 );
}
});
$("#left").click(function () {
if (parseInt($("#slider_container").css("marginLeft")) > -699) {
$("#slider_container").animate ({
marginLeft: 0
},450 );
}
else
{
$("#slider_container").animate ({
marginLeft: "+=700px"
},450 );
}
});
$(“#右”)。单击(函数(){
if(parseInt($(“#slider_container”).css(“marginLeft”)<-2100){
$(“#滑块_容器”)。设置动画({
边际收益:-2800
},450 );
}
其他的
{
$(“#滑块_容器”)。设置动画({
边缘左侧:“-=700px”
},450 );
}
});
$(“#左”)。单击(函数(){
if(parseInt($(“#slider_container”).css(“marginLeft”)>-699){
$(“#滑块_容器”)。设置动画({
边缘左侧:0
},450 );
}
其他的
{
$(“#滑块_容器”)。设置动画({
边缘左侧:“+=700px”
},450 );
}
});
hmmm最后在脚本中破坏了所有内容hmm因此似乎不起作用,但没有破坏任何内容。我可能真的说错了。右键,一旦slider_container大于2800像素,则不应在边距上添加任何内容,当slider_容器的marginleft小于700时,左键不应再被移除。在小提琴中,单击任意拇指指甲以到达滑块。只需更改Math.max的Math.min
和2800-margin
的margin
。。这不是一个复杂的逻辑问题,我只是想知道为什么这不起作用