jquery - 按设定值增加属性

时间:2013-05-31 02:58:00

标签: jquery

我有一个jQuery函数,直到最近一直运行良好。

//Calculate width of slider container
var calc_width = 200 * $('.side_list_cont').length;
$("#op_slide").width(calc_width);


//Calculation for when to decrease margin for slide effect
$('#op_right').click(function(){
    var slidewidth = parseInt($('#op_slide').css('width'),10),
        getslideleft = parseInt($('#op_slide').css('margin-left'),10),
        slideleft = ((getslideleft - 200)*-1);
    if ( slideleft >= slidewidth ) {
    }
    else {
        $('#op_slide').animate({'margin-left': '-=200px'}, 200);
    }
});


//Calculation for when to increase margin for slide effect
$('#op_left').click(function(){
    var slidewidth = $('#op_slide').css('width'),
        slideleft = $('#op_slide').css('margin-left');
    if (slideleft == '0px') {
    }
    else {
        $('#op_slide').animate({'margin-left': '+=200px'}, 200);
    } 
});

我过去工作很棒。然后突然间,它没有增加左边距值,而只是将其更改为200px-200px。在.animate上查看jQuery的文档时,他们在此增量方法上的示例可以正常工作。

1 个答案:

答案 0 :(得分:4)

您最近是否升级到jQuery 1.10.0?如果是这样,那个版本中的相对增量动画问题(例如.animate({'margin-left': '+=200px'})是a bug,该版本今天刚刚在1.10.1中修复。

请参阅:http://blog.jquery.com/2013/05/30/jquery-1-10-1-and-2-0-2-released/http://bugs.jquery.com/ticket/13939