受人尊敬的人......
我正在使用时间轴滚动条,当我向左滚动时,它会给我带来麻烦....
这些值不是线性减去,而是交替添加......
我已多次检查过js但无法弄明白......
http://codepen.io/akashdevaraju/pen/tiesa
$("#right,#left").click ->
id = this.id
patt = /\d+/g
circles = $(".circle")
if id is "right"
for cir in circles
left = $(cir).css("left")
lef = parseInt(left.match(patt))
le = lef - 80
$(cir).css("left","#{le}px")
else
for cir in circles.toArray().reverse()
left = $(cir).css("left")
lef = parseInt(left.match(patt))
le = lef + 80
$(cir).css("left","#{le}px")
请帮忙......
答案 0 :(得分:1)
请尝试使用以下代码。我修改了一下你的正则表达式,所以它不会去除前面的' - '符号:例如'-80px'并将返回'-80'。即使是负值,你的正则表达式也会返回'80'。当按下左按钮时,负的左偏移被正则表达式搞砸了,所有这些圆圈共享相同的偏移...
$("#right,#left").click ->
id = this.id
patt = /(-)*[0-9]+/g
circles = $(".circle")
for cir in circles
left = $(cir).css("left")
lef = parseInt(left.match(patt))
le = if id is "right" then lef - 80 else lef + 80
$(cir).css("left","#{le}px")