Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/12/2010, 09:51
Avatar de stock
stock
 
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
Respuesta: Clase para crear un objeto DOM?

Hola nanchet.

Ok, a mi punto de vista vas por buen camino, intentando automatizar y abstraer el trabajo sucio que supone trabajar con el DOM, hace tiempo hice un pequeño framework para el concurso que hubo de JavaScript aquí mismo en FDW, te comento como lo hice para que te des una idea.


En primer lugar hice una clase que se llamaba "Element", esta clase era responsable de crear cualquier elemento de y contenía varios metodos para agregarle eventos, estilos, clases de CSS, etc, de manera sencilla! el código del Element era algo así:

Código Javascript:
Ver original
  1. var Element = function(el){
  2.       this.el = document.getElementById(el); //esto lo puedes hacer más inteligente
  3.       //inclusive crear el elemento si no existe en el DOM
  4. }
  5.  
  6. Element.prototype = {
  7.    addClass : function(klass){
  8.        
  9.    },
  10.  
  11.    addListener : function(type,callback,scope){
  12.            this.el.addEventListener(type,callback,false);  //aquí se debe estandarizar para todos los navegadores
  13.     },
  14.  
  15.     append : function(child){
  16.           this.el.appendChild(child.el);
  17.     }
  18.    //varios otros métodos ........
  19. }

La idea es hacer un wrapper para un elemento del DOM, y mediante los métodos modificar sus propiedades, eventos, etc... la idea sería estandarizar las cosas y hacer una clase que funcione en todos los navegadores.

Abstraer el código y trabajar ordenadamente siempre es una buena idea!

Saludos