Foros del Web » Programando para Internet » Javascript »

Cargar/Descargar un archivo .js .css dinamicamente

Estas en el tema de Cargar/Descargar un archivo .js .css dinamicamente en el foro de Javascript en Foros del Web. Buenas, antes de nada agradeceros el tiempo dedicado, suelo ser asiduo a estos foros aunque normalmente no suelo responder ni escribir. No obstante espero podais ...
  #1 (permalink)  
Antiguo 04/05/2010, 02:29
 
Fecha de Ingreso: julio-2009
Ubicación: Almería
Mensajes: 4
Antigüedad: 15 años, 4 meses
Puntos: 0
Cargar/Descargar un archivo .js .css dinamicamente

Buenas, antes de nada agradeceros el tiempo dedicado, suelo ser asiduo a estos foros aunque normalmente no suelo responder ni escribir. No obstante espero podais ayudarme e intentare ayudar al prójimo cuando pueda.

Este es el meollo: estoy intenando cargar y descargar archivos .js y .css. Leyendo por internet he encontrado fucniones que lo hacen bien, al menos en apariencia.

Además de muchos otros ejemplos, me he servido basicamente de este:
http://www.javascriptkit.com/javatutors/loadjavascriptcss.shtml para cargar archivos .js y .css

http://www.javascriptkit.com/javatutors/loadjavascriptcss2.shtml para descargarlo.

El funcionamiento es correcto en los archivos .css, ya que lo cargas y las clases estan activadas y en cuanto lo descargas las clases dejan de funcionar. El problema es a la hora de cargar/descargar archivos .js: la carga es correcta y las funciones que contiene el archivo funcionan perfectamente; el problema es al descargarlos.

Cuando descargo el archivo .js, a continuación intento reproducir una función que no deberia funcionar (ya que el archivo no está cargado) y la función sigue "funcionando" valga la redundancia. En el segundo link que esplica como remover archivos .js literalmente expresa esto:

"In the case of JavaScript, while the element is removed from the document tree, any code loaded as part of the external JavaScript file remains in the browser's memory. That is to say, you can still access variables, functions etc that were added when the external file first loaded (at least in IE7 and Firefox 2.x)."

Mi pregunta es si alguno habeis indagado este tema, podeis aconsejar para que funcione efectivamente según mi idea, o debo cambiar la planificación de la página web para que sea de otra manera y permitirme funcionar como quiero.

Gracias, un saludo amigos.
  #2 (permalink)  
Antiguo 04/05/2010, 12:17
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 6 meses
Puntos: 1485
Respuesta: Cargar/Descargar un archivo .js .css dinamicamente

el tema es sencillo pero dependiendo hasta donde lo quieras llevar, se hace complicado. en mi opinion personal, creo que es mejor rediseñar o planificar nuevamente los conceptos de tu aplicacion. como bien has citado, al eliminar un elemento SCRIPT, el navegador no desecha el codigo que corresponde a este. la unica manera que veo posible es borrando manualmente las variables y funciones correspondiente al script cargado. tan sencillamente tienes que asignar a los identificadores el valor null. el problema es cuando el codigo es demasiado extenso. pues se hace tediosa la tarea de mantener un registro de todas las variables o funciones a eliminar. y peor aun si se da el caso de codigo generado por lenguaje servidor. tampoco hay forma de identificar que variables o funciones le pertenecen a que archivo en particular. lo que se me ocurre es tener un objeto principal para cada archivo pero puede cambiar radicalmente la forma de pensar y escribir. por ejemplo, escribiriamos el codigo de cada archivo de esta forma.
Código:
archivo1 = (function(){
// aqui dentro van tus variables y funciones
return {
// metodos y propiedades para uso externo;
// es decir, para que otros codigos puedan tener acceso;
}
})();
al final, la variable es un objeto, pero para tener acceso a los datos desde el exterior tienes que indicar siempre el objeto. luego, cuando quieras desechar todo lo referente a un archivo js, solamente tienes que asignar null a esa variable.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 05/05/2010, 01:07
 
Fecha de Ingreso: julio-2009
Ubicación: Almería
Mensajes: 4
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Cargar/Descargar un archivo .js .css dinamicamente

Esa opcion ya la he considerado, y es válida parcialmente, no obstante los metodos para llamar, crear y luego "eliminar" ese objeto seguirían cargados en memoria, por lo tanto seria organizar un poco el trabajo para el mismo resultado.

Como dice José Mota, las gallinas que entran por las que salen :D, no obstante muchas gracias por la aportación.
  #4 (permalink)  
Antiguo 05/05/2010, 06:33
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 5 meses
Puntos: 834
Respuesta: Cargar/Descargar un archivo .js .css dinamicamente

Para eso hay que diseñar la página a incluir como si fuera un nameSpace:
Código PHP:
var ns={metodo:function(){...},...} 
Y luego, simplemente:
Código PHP:
ns=null
  #5 (permalink)  
Antiguo 05/05/2010, 06:46
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 6 meses
Puntos: 1485
Respuesta: Cargar/Descargar un archivo .js .css dinamicamente

gracias Panino, distes con la palabra que se me habia escapado. namespace
saludo!
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #6 (permalink)  
Antiguo 05/05/2010, 09:40
 
Fecha de Ingreso: julio-2009
Ubicación: Almería
Mensajes: 4
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Cargar/Descargar un archivo .js .css dinamicamente

No conozco eso, probaré a ver que tal funciona. Muchas gracias compañeros!
  #7 (permalink)  
Antiguo 05/05/2010, 15:31
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 6 meses
Puntos: 1485
Respuesta: Cargar/Descargar un archivo .js .css dinamicamente

pues es mas o menos lo mismo que te habia mencionado antes, lo unico que al estilo patron modular. en el caso de Panino, es un objeto donde pones todas tus variables y funciones en lugar de tirarlos en el ambito global. de modo que lo tienes centralizado en un solo area y te puedes deshacer de el tan simplemente borrando el namespace.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Etiquetas: css, dinamicamente, js
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 15:07.