How to increase/decrease current margin at a number by jquery?

后端 未结 4 1843
慢半拍i
慢半拍i 2020-12-17 16:58

Given an element with unknown margin-left, how to increase its margin-left at a number say 100px?

For example:

assuming the original margin-left is 100px

相关标签:
4条回答
  • 2020-12-17 17:10
    $("p").css({marginLeft: function(index, value) {
        return parseFloat(value) + 100;
    }});
    
    0 讨论(0)
  • 2020-12-17 17:17

    You can simply achieve this using just .css (see example below)

    $('#element-id').css('margin-left', '+=100px');
    
    0 讨论(0)
  • 2020-12-17 17:21

    A quick/terse way to do this:

    $('#IDHere').animate({marginLeft: '+=100px'}, 0);
    

    Here's a quick example of this. The 0 makes this happen in a single frame, if you actually want to animate it, change the 0 to the number of milliseconds you want, like this.

    0 讨论(0)
  • 2020-12-17 17:23
    $('#element-id').css('margin-left', function (index, curValue) {
        return parseInt(curValue, 10) + 100 + 'px';
    });
    

    curValue will include 'px' at the end, so you'll end up with NaN or 100px100px as your result without using parseInt first.

    0 讨论(0)
提交回复
热议问题