Pregunta ¿Por qué la fuente html no cambia cuando el DOM se actualiza dinámicamente?


Había publicado una pregunta antes Incongruencia de jQuery al configurar el atributo de solo lectura en IE-8 y FF-3.5.8 Y estaba bastante contento con la respuesta.

Pero noté que si actualizas (¿algún ??) elementos de DOM dinámicamente, luego ves la fuente (usando la fuente de la vista del navegador) encuentro que el atributo de elemento DOM actualizado conserva su valor anterior (antes de la actualización). Sin embargo, si usa la barra de herramientas de Firebug / IE Developer, muestra el DOM actualizado

Ejemplo:http://gutfullofbeer.net/readonly.html

FF3.5-Ver página Fuente:

<html>
  <head>
    <script src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js' type='text/javascript'></script>
    <script>
      $(function() {
        $('input.readonly').attr('readonly', true);//set input with CSS class readonly to readonly
      });
    </script>
  </head>
  <body>
    <input type='text' class='readonly' maxlength='20' value='Blort'>This one is read-only<br>
    <input type='text' maxlength='20' value='Fish'>This one is not read-only<br>

  </body>
</html>

Aquí el primer cuadro de texto está configurado para solo leer en jQuery document.ready método. Ver la fuente con el navegador daría un marcado como

<input type='text' class='readonly' maxlength='20' value='Blort'>

y Firebug dará algo así como

<input type="text" value="Blort" maxlength="20" class="readonly" readonly=""> 

Barra de herramientas del desarrollador IE8:

<input class="readonly" type="text" maxLength="20" readOnly="readonly" value="Blort"/>

Entonces, supongo que el navegador (IE8 / FF3.5) genera la fuente html mucho antes de que se activen los eventos DOM (en mi caso es jQuery's document.ready() )

¿Puede alguien decirme qué está pasando detrás de la escena?


5
2018-03-08 20:23


origen


Respuestas:


La fuente de vista es la fuente descargada en el navegador. Lo que sucede en la memoria no se actualiza en la fuente.


15
2018-03-08 20:24



Varios navegadores tienen inspectores de DOM, por ejemplo, Safari 4.0 tiene un excelente navegador de DOM que le ayuda a ver los elementos generados dinámicamente y sus estilos CSS dinámicamente.


3
2018-03-08 20:27