2010-04-22 16 views

Respuesta

56

Hacer esto:

$("#myid").attr("style", "visibility: hidden") 

dejará única este atributo de estilo, mientras se hace esto:

$("#myid").css("visibility", "hidden") 

Se añadir (o conjunto) este atributo estilo.

He aquí un ejemplo, la primera voluntad siempre resultado en este:

style="visibility: hidden;" 

La segunda sólo se suma visibility por lo que su estilo puede ser ahora:

style="width: 50px; color: red; visibility: hidden;" 
+0

Gracias por la respuesta clara y rápida ! –

+0

¡Una revelación para el neófito! Gracias – Biki

4

Nada. Solo dos formas de lograr el mismo objetivo.

El primero sobrescribirá las configuraciones de estilo existentes. Si usted tenía:

<div style="font-weight: bold;" /> 

Se convertiría en:

<div sytle="visibility: hidden;" /> 

La segunda añadirá la opción de visibilidad a los estilos existentes. Por lo tanto:

<div style="font-weight: bold;" /> 

woudl se convierten en:

<div style="font-weight: bold; visibility: hidden;" /> 

Si no hay ningún atributo de estilo ya establecido, entonces los dos producirá el mismo resultado final.

0

No hay ninguna diferencia. $ .css() es solo un método de acceso directo para acceder al atributo de estilo css de un elemento dom.

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

EDIT: Como Justin señaló, no es una diferencia en el método que .attr() se sobreponen a cualquier atributo de estilo existentes.