Foros del Web » Programando para Internet » Javascript »

No me instancia objetos

Estas en el tema de No me instancia objetos en el foro de Javascript en Foros del Web. Buenas! A ver cómo os explico... Tenía un "proyectillo" en Java que tuve que "traducir" a JS. Obviamente orienté todo a Objetos (por Java). Entonces, ...
  #1 (permalink)  
Antiguo 20/12/2013, 13:20
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 8 meses
Puntos: 33
No me instancia objetos

Buenas!

A ver cómo os explico...

Tenía un "proyectillo" en Java que tuve que "traducir" a JS. Obviamente orienté todo a Objetos (por Java). Entonces, yo tengo algo como:

Código HTML:
Ver original
  1. <script type="text/javascript" src="xxxxxxxx.xxxxxx"></script>

dentro de xxxxxxxx.xxxxxx:

Código Javascript:
Ver original
  1. var MiObjeto=function(){
  2.     this.miVariable=1;
  3.     this.miMetodo=function(p1,p2){
  4.         alert(p1);
  5.  
  6.         //¡Hala! dice "pedos"
  7.         return p2;
  8.    };
  9. };

Por otra parte, en la web "principal (xxxxxxxx.xxxxxx) es de un dominio externo) tengo:

Código Javascript:
Ver original
  1. //modifica el head para añadir el tag "script" del sitio externo
  2.   cargarExterno();
  3.  
  4.   o=new MiObjeto();
  5.   o.miFunction(1,2);

Pero me da error en el "new"... me dice que no está definido "MiObjeto".

No soy muy ducho en el tema de JS, así que pido disculpas anticipadas por la (seguro) burrada/s que habré hecho para que esto no funcione...

Gracias!
  #2 (permalink)  
Antiguo 20/12/2013, 13:27
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 11 años, 3 meses
Puntos: 578
Respuesta: No me instancia objetos

Entonces el error será la función cargarExterno. Otra cosa, estás llamando al método miFunction() y debería ser miMetodo(), pero hasta tanto no llegó el navegador.
  #3 (permalink)  
Antiguo 20/12/2013, 13:44
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 8 meses
Puntos: 33
Respuesta: No me instancia objetos

Ah, bueno... era un sample

En principio está todo bien... he hecho un pequeño PHP que me junta los dos ficheros en un solo JS y ahora sí me instancia el Objeto...

¿Puede ser alguna configuración de JS o el navegador?

Gracias!
  #4 (permalink)  
Antiguo 20/12/2013, 14:11
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 11 años, 3 meses
Puntos: 578
Respuesta: No me instancia objetos

No creo que sea el navegador. El principal problema es el orden en que los cargas... primero deben ir las clases, luego ya puedes instanciar objetos y llamar a sus métodos.
  #5 (permalink)  
Antiguo 21/12/2013, 06:58
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 6 meses
Puntos: 1012
Respuesta: No me instancia objetos

el problema que tienes, insalvable, es este
Cita:
Por otra parte, en la web "principal (xxxxxxxx.xxxxxx) es de un dominio externo) tengo:
te imaginas que se pudiese hacer??
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #6 (permalink)  
Antiguo 22/12/2013, 03:01
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 8 meses
Puntos: 33
Respuesta: No me instancia objetos

Cita:
Iniciado por IsaBelM Ver Mensaje
el problema que tienes, insalvable, es este

te imaginas que se pudiese hacer??
No acabo de entender tu mensaje. ¿Quieres decir que no puedo hacer algo así?

miweb.com/index.html

Código HTML:
Ver original
  1. <script src="otraweb.com/funciones.js" type="text/javascript"></script>
  2. <script type="text/javascript">
  3.   //cargamos un script de otraweb.com: otraweb.com/objetos.js
  4.   carga('otraweb.com/objetos.js');
  5.  
  6.   miObjeto = new MiObjeto();


miweb.com/funciones.js
Código Javascript:
Ver original
  1. function carga(url){/*codigo*/}

miweb.com/objetos.js
Código Javascript:
Ver original
  1. var miObjeto = function(){/*codigo*/};

Pues si es eso, dilo así de claro. Ya dije que no se demasiado de JavaScript. Creo que el "sarcasmo" sobraba.
  #7 (permalink)  
Antiguo 22/12/2013, 07:38
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 11 años, 3 meses
Puntos: 578
Respuesta: No me instancia objetos

Pero, ¿Usas AJAX para cargarla? Si se trata de otra web totalmente diferente no podrás por el same-origin.
  #8 (permalink)  
Antiguo 22/12/2013, 12:22
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 8 meses
Puntos: 33
Respuesta: No me instancia objetos

Cita:
Iniciado por PHPeros Ver Mensaje
Pero, ¿Usas AJAX para cargarla? Si se trata de otra web totalmente diferente no podrás por el same-origin.
No uso AJAX... uso aquello de crear un nodo tipo "script" y añadirlo al head.

Puede ser lo que dices, pero lo curioso es lo que comentaba en el segundo post:

he hecho un pequeño PHP que me junta los dos ficheros en un solo JS y ahora sí me instancia el Objeto...

Así que a falta de un arreglo final de momento me las apaño con eso jajajaja

Etiquetas: funcion, instancia, js, objetos, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:50.