我正在尝试为显示点击缩略图的画廊创建代码:
我将一个div命名为“ track”,里面是缩略图。
现在使用我当前的代码,当我按下按钮时,它向左移动-100px
当我再次单击时,没有任何反应。我希望这是连续的。
10是保证金位置
$("#button").click(function () {
var a = 10;
var b = 10;
var c = function () {
if (a >= b) {
a = b - 100;
return (a);
}
};
$('#track').css({
'margin': '10px ' + c() + 'px',
'transition-duration': '1s'
});
});
因此,在该代码之后c返回-90px
如果他将css中的margin保存为margin,则返回idk:10px 10px;保证金10px -90px;
如果有人有任何想法如何在每次点击移动-100px之后做出该选择?
Fiddle
最佳答案
Vars a
和b
将设置为值10
。
由于b
永远不会在代码中的任何地方重置,因此您的函数将始终返回实际上是b - 100
的10 - 100
。因此它只会在此位置移动一次。
var a = 10;
var b = 10;
var c = function () {
if (a >= b) {
a = b - 100;
return (a);
}
如果我正确理解的话,您想要的是每次单击按钮时更改值。在下面的代码中,我在点击定义之外得到了
var a = 10;
。我删除var b
,并在每次单击时减小您的a
。您可能应该添加一个条件,以便在某个时候停止此效果。var a = 10;
$("#apDivvv2").click(function() {
var c = function () {
a-=100;
return a;
};
$('#track').css({'margin':'10px ' + c() + 'px', 'transition-duration':'1s'});
});
Here是您更新的jsfiddle