Comunidad de diseño web y desarrollo en internet online

Ayuda JSON !

Citar            
MensajeEscrito el 03 Ene 2008 09:31 pm
Recien estoy comenzando a trabajar con json asi que tengo unas dudas basicas, tengo el siguiente codigo:

window.onload=function() {

tablero.dibujar(5,2);
tablero.probando();
tablero.Activar();
//tablero.interfaz();
//tablero.setAttribute("style","bgcolor:red");
}

var tablero = {

"dibujar":function(filas,columnas) {
var tabla = document.createElement("table");
for (var i=0; i<filas; i++) {
var filas = document.createElement("tr");
tabla.appendChild(filas);
for (var j=0; j<columnas; j++) {
var columnas = document.createElement("td");
var text=document.createTextNode(i+"--"+j);
columnas.appendChild(text);
filas.appendChild(columnas);

}
}
tabla.appendChild(filas);
document.body.appendChild(tabla);
},

"Activar":function() {
alert("activar");
this.onmouseover=function() { this.setAttribute("bgcolor","red"); };
this.onmouseout=function() { this.removeAttribute("bgcolor"); };
this.onclick=function() { alert("ele")}
},

"interfaz": function() {
this.setAttribute("bgcolor","red");
},
"probando": function() {alert("hoa");}
};


mi duda es la siguiente que esta mal en las funciones "Activar" e "Interfza" que no logron que anden. ??? y como logro acceder a los elementos de la tabla??

gracias!

Por usuaria

6 de clabLevel



Genero:Femenino  

firefox
Citar            
MensajeEscrito el 04 Ene 2008 03:31 pm
La verdad, que no tengo ni idea de JSON, pero si tiene algo que ver con JavaScript, las funciones no se definen así.

En JavaScript, las funciones son:
function interfaz() { /* código de la función */ }
, y no...
"interfaz": function() { /* código de la función */ }

(y ciertamente, el código que has escrito, podría ser íntegramente JavaScript)

Si no tiene nada que ver... que llegue otro y te ayude... (y de paso, aprendo algo nuevo)

Por El Oso Amoroso

Claber

1780 de clabLevel

6 tutoriales

 

Madrid, España, Europa, Eurasia, La Tierra, Sist.Solar, Vía Láctea, UNIVERSO

firefox
Citar            
MensajeEscrito el 04 Ene 2008 09:58 pm
loading................


usuari: tu estructura está bien y la forma en la que lo llamas también y no puedes acceder a tu tabla ya que no está dentro del contexto local de tu Objeto Literal, deberías poner esto.

Código :

var tabla;
this.tabla = tabla = document.createElement("table");


Y ya dentro de Activar, deberías acceder a la tabla haciendo referencia a this.tabla

Código :

this.tabla.onmouseover=function() { this.tabla.setAttribute("bgcolor","red"); };
this.tabla.onmouseout=function() { this.tabla.removeAttribute("bgcolor"); }; 


rizome:

Lo que hace a javascript superior a muchos otros lenguajes es la forma declaratoria de sus variables.

Código :

var a = {
  "algo":function(){},
  otro:function(){}
}


puedes acceder a sus elementos como

Código :

a.algo();
a['algo']();
a.otro();
a['otro']();


connection closed.

Por MaBoRaK

19 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 05 Ene 2008 03:10 am
gracias por responder..!
entiendo lo q me dijiste y lo probe pero nose q toy escribiendo mal...

var tablero = {
var tabla; //////////////////////////////////////// aca es donde me tira error
"dibujar":function(cantFilas,cantColum) {
this.tabla=tabla= document.createElement("table");
for (var i=0; i<cantFilas; i++) {
var filas = document.createElement("tr");
tabla.appendChild(filas);
for (var j=0; j<cantColum; j++) {
var columnas = document.createElement("td");
var cont=document.createElement("p");
var text=document.createTextNode(i+"-"+j);
cont.appendChild(text);
columnas.appendChild(cont);
filas.appendChild(columnas);
}
}
tabla.appendChild(filas);
document.body.appendChild(tabla);
},

"Activar":function() {
this.tabla.onmouseover=function() { this.tabla.setAttribute("bgcolor","red"); };
this.tabla.onmouseout=function() { this.tabla.removeAttribute("bgcolor"); };
},

};

//y otra peg. a los elementos de la tabla una vez q me ande como tendria q acceder?
gracias!

Por usuaria

6 de clabLevel



Genero:Femenino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.