Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/02/2011, 12:40
Avatar de ghidalgoram
ghidalgoram
 
Fecha de Ingreso: marzo-2008
Ubicación: Costa Rica
Mensajes: 446
Antigüedad: 16 años, 2 meses
Puntos: 7
Pregunta En el 2011, usar innerHTML ó DOM ?

Hola, saludos para todos.

Hace como 2 meses he estado aprendiendo sobre DOM. Por medio de una aplicación web que estoy trabajando, tuve que estudiar un poco el tema.

Quería pedir opinión a cada uno de ustedes para actualizarnos.
Por ejemplo, hace mucho tiempo necesitaba saber como borrar el contenido de un div, campo de formulario ó cualquier elemento HTML. En este caso, digamos que tengo un div al que llamaré principal. Algo así:

Código HTML:
Ver original
  1. <div id="principal">Hola, este es el texto de inicio</div>

Y digamos que después que el usuario le de click a un botón, el contenido del div principal deba cambiarse a:

Código HTML:
Ver original
  1. <div id="principal">Hola, este es mi nuevo texto</div>

Yo sé que ese cambio de texto se puede hacer de dos maneras:

1. DOM

Código Javascript:
Ver original
  1. var div1=document.createElement('div');
  2. div1.setAttribute('id','principal');
  3. var txt1=document.createTextNode('Hola, este es mi nuevo texto');
  4. div1.appendChild(txt1);


2.innerHTML
Código Javascript:
Ver original
  1. document.getElementById('principal').innerHTML = 'Hola, este es mi nuevo texto';

Hace como un año leí varios artículos sobre usar innerHTML y DOM.

Aunque es más rápido desarrollar código con innerHTML según se dice que no es un estándar en el mundo del web. En este artículo creado en el no lo apoyan, más bien se le dan créditos a DOM, aunque sea más complicado de crear el código. Había leído este y mucho otros artículos más que desacreditaban al innerhtml y apoyaban al uso de DOM. Entonces, tomé la decisión de usar DOM por ser un estándar y no innerhtml que según entiendo lo creó $Microsoft.

Hace cómo dos meses decidí investigar de nuevo y me parece que innerhtml ha tomado más fuerza y parece ser más aceptado y si no me equivoco se está estandarizando.

Según un artículo de W3schools navegadores como Internet Explorer (lógico), Mozila Firefox, Safari, Chrome y Opera lo soportan.

Según había leído en un post de este mismo Foro, parece ser que para HTML 5 el innerHTML será incluido. No puedo incluir el link, porque no recuerdo en que parte está.

He leído varios artículos, pero que fueron publicados unos en el 2005, otros en el 2008, 2009 y es lo que muchos opinaban sobre innerHTML vrs DOM.

Ya que la tecnología es tan cambiante, es decir, hoy dices una cosa y dentro de 1 año hablando del mismo tema debes cambiar tu forma de pensar, me atreví a consultar en este foro si innerHTML ya es usado oficialmente como un estándar. A la fecha que estoy publicando este Post, recomiendan usar innerHTML ó mejor DOM.

En otro foro, un usuario responde en un artículo lo siguiente:

Cita:
innerHTML no es estandar. Los estandares los define la W3C, indepediente de quien cree los codigos y/o lenguajes, aunque se dice que en los prox años la W3C piensa declarar innerHTML como estandar, pero hasta el momento es solo una funcion creada por Microsoft. Por estos dias ya son varios los navegadores que utilizan esta funcion, pero aun asi no es recomendable. Aunque sea un logo mas extenso, y para algunos complicado, es mejor utilizar DOM, ya que es un estandar de la W3C.
Esto fué publicado aproximadamente hace como 2 años.

Recuerden que el problema de usar innerHTML hace 1, 2, 3 ó más años era porque no es un estándar, pero al día de hoy ? Que recomiendan ?

Quería actualizarme sobre ese tema.

Saludos y gracias.
__________________
Loading...