<html>
<style type="text/css">
a {
display: none;
}
</style>
<body>
<p id="p"> a paragraph </p>
<a href="http://www.google.com" id="a">google</a>
</body>
<script type="text/javascript">
var a = (document.getElementById('a')).style;
alert(a.display);
var p = (document.getElementById('p')).style;
alert(p.display);
p.display = 'none';
alert(p.display);
</script>
</html>
La primera y la segunda pantalla alert
nada que no sea una cadena vacía, lo cual pensé que debería ser none
y block
. Sin embargo, después de la configuración intensionalmente display
, la tercera alert
finalmente alerta none
.¿Cómo recuperar la propiedad de visualización de un elemento DOM?
¿Pero por qué? ¿Cómo puedo recuperar la propiedad display
correctamente?
Gracias.
estilo no se debe llamar un atributo. Es un objeto Cada nodo de elemento DOM tiene una propiedad de estilo. Esta propiedad es un objeto. ... El atributo de estilo HTML se usa para agregar propiedades a la propiedad de estilo del nodo DOM que representa el elemento HTML. Una vez que se analiza el código HTML, ya no tenemos atributos HTML, sino propiedades del objeto. –
@ Šime Vidas: Creo que si vuelve a leer la respuesta de David, se dará cuenta de que ha dibujado correctamente esa distinción. –
@David Dorward: Gracias por su ayuda. Entonces, ¿cuál es el uso del atributo 'style' ya que no puede reflejar el cambio en tiempo real del estilo CSS? – Jichao