jQuery: mover elemento por valor relativo
Pregunta
(que significa un elemento de valor izquierdo): ¿Cuál es la forma más fácil de mover un elemento? 10 px a la izquierda (desde su posición actual)?
thx
Solución
Puede ser que jQuery sea excesivo y establezca el margen izquierdo: -10px hará el truco.
Puede obtener el desplazamiento de un elemento () relativo al documento: http://docs.jquery.com / CSS / offset
Eso le daría la izquierda, arriba, etc.
Entonces es posible que tengas que colocar el elemento utilizando el css así.
subMenu.css({
position: 'absolute',
zIndex: 5000,
left: left,
top: top
});
Otros consejos
Aquí hay un ejemplo rápido usando jQuery:
$("#el").css({
left: $("#el").position().left - 10 + "px"
});
Nota: el elemento que desea mover debe estar posicionado absoluta o relativamente.
Suponiendo que su elemento tenga el id 'myElement':
$('#myElement').css(
{
'position': 'relative',
'left': '-10px'
});
A partir de 1.6 puede usar valores relativos en css ()
para poder usar esto:
$('#myElement).css( "left", "+=15" );
Mientras el elemento ya tenga un valor definido para left
y se encuentre en una posición absoluta.
Dado que ninguna de las otras respuestas son verdaderas soluciones de estilo jQuery, resucitaré este viejo problema.
Esta solución puede mover TODOS los elementos seleccionados por un valor relativo:
$('.selected').each(function() {
$(this).css({ left: $(this).position().left - 10 });
});