2011-01-11 19 views
13

¿Es el navegador cruz jQuery('#selector').css({'opacity':50});?jquery opacity cross browser?

La única razón por la que pido es porque la línea de abajo que había normalmente utilizan en css

-moz-opacity:.50; filter:alpha(opacity=50); opacity:.50;

Respuesta

26

esto es probablemente mejor:

$(element).fadeTo(0, 0.5);
+0

'css ({opacity: 50})' no siempre funciona, bueno en Chrome no, pero es bueno con 'fadeTo' :) – Val

+0

Esto no es lo mismo, porque esto no solo establece la opacidad en un navegador cruzado, pero lo anima también. En la era de CSS3 esto puede no ser deseado debido a las transiciones de CSS. –

+2

@RobertKoritnik, verifique la API antes de hacer tales afirmaciones; el primer argumento aquí significa que hay ** no ** animación. Además, no estoy seguro de cuál es la conexión a las transiciones; ninguno fue pedido. Además, esto fue publicado claramente hace más de un año, y aún así, no estoy seguro de la edad de CSS3, teniendo en cuenta que algunos mercados no son capaces de CSS3. – davin

0

Debido jQuery está diseñado con la compatibilidad entre navegadores en cuenta, siempre y cuando la etiqueta CSS opacidad es compatible con un navegador, entonces, sí, su código jQuery es de navegador cruzado. (¿Has probado aún? Puede dirigirse a jsfiddle.net para ver si es.)

Para obtener más información, aquí está el W3Schools page on opacity. Diríjase allí con varios navegadores y vea si funciona. (Parece que funciona para mí en los tres principales navegadores.)

+4

Hola, sé que esta es una publicación anterior, pero solo me gustaría añadir, por favor, no confíe ni cite W3Schools. Ver: http://w3fools.com/ – megaflop

+2

100% correcto, @daiscog. Yo era joven y tonto. (Bloqueo los resultados de W3School ahora.) De hecho, fue SO lo que me corrigió por el error de mis formas. Soy más inteligente ahora. ;) – JasCav

4

Sí, se establece la opacidad CSS o el filtro de la opacidad de IE.