11

(意思是元素的左值):移动元素的最简单方法是什么 - 例如向左移动 10px(从其当前位置)?

4

5 回答 5

8

下面是一个使用 jQuery 的简单示例:

$("#el").css({
    left: $("#el").position().left - 10 + "px"
});

注意:您要移动的元素必须绝对定位或相对定位。

于 2009-11-27T00:24:52.410 回答
6

假设您的元素具有 id 'myElement':

$('#myElement').css(
{
  'position': 'relative',
  'left': '-10px'
});
于 2009-11-27T00:21:53.430 回答
5

可能是 jQuery 太过分了,设置 margin-left: -10px 就可以了。

您可以获取元素相对于文档的 offset():http: //docs.jquery.com/CSS/offset

那会给你左边,顶部等。

然后你可能不得不像这样使用 css 来定位元素。

 subMenu.css({
            position: 'absolute',
            zIndex: 5000,
            left: left,
            top: top
        });
于 2009-11-27T00:27:46.137 回答
5

从 1.6 开始,您可以使用相对值,css()因此您可以使用:

$('#myElement).css( "left", "+=15" );

只要元素已经定义了值left并且是绝对定位的。

参考:http ://api.jquery.com/css/

于 2015-06-18T13:25:55.587 回答
0

由于其他答案都不是真正的 jQuery 风格的解决方案,我将重新提出这个老问题。

此解决方案可以将所有选定元素移动一个相对值:

$('.selected').each(function() {
    $(this).css({ left: $(this).position().left - 10 });
});
于 2014-10-25T19:24:54.750 回答