Paso 1) Retire el punto y coma, es un objeto que está creando ...
a(this).next().css({
left : c,
transition : 'opacity 1s ease-in-out';
});
a
a(this).next().css({
left : c,
transition : 'opacity 1s ease-in-out'
});
Paso 2) vendedor-prefijos ... no hay navegadores utilizan transition
ya que es la norma y esta es una característica experimental, incluso en las últimas versiones de navegadores:
a(this).next().css({
left : c,
WebkitTransition : 'opacity 1s ease-in-out',
MozTransition : 'opacity 1s ease-in-out',
MsTransition : 'opacity 1s ease-in-out',
OTransition : 'opacity 1s ease-in-out',
transition : 'opacity 1s ease-in-out'
});
Aquí está una demostración: http://jsfiddle.net/83FsJ/
Paso 3) Mejor Vender-prefijos ... en lugar de añadir un montón de CSS a elementos innecesarios (que acaba de ser ignorado por el navegador) que puede utilizar jQuery para decidir qué vender-prefijo a utilizar:
$('a').on('click', function() {
var myTransition = ($.browser.webkit) ? '-webkit-transition' :
($.browser.mozilla) ? '-moz-transition' :
($.browser.msie) ? '-ms-transition' :
($.browser.opera) ? '-o-transition' : 'transition',
myCSSObj = { opacity : 1 };
myCSSObj[myTransition] = 'opacity 1s ease-in-out';
$(this).next().css(myCSSObj);
});
Aquí es una demostración: http://jsfiddle.net/83FsJ/1/
También tenga en cuenta que si se especifica en la declaración de transition
que la propiedad de animar es opacity
, estableciendo una propiedad left
no será animada.
¿tiene jquery asignado a 'a' o debería ser un '$' – user1289347
¿qué quiere decir 'breaks' jQuery? – Fresheyeball
@Fresheyeball, mi script no se ejecuta en absoluto cuando esa línea está allí. –