Hola,
tengo una duda, nesesito que la ejecucion del script se pause durate un tiempo, en este tiempo nose pueda ejecutar ningun otra funcion.
| ||||
Respuesta: Pausar Ejecucion de JS un tema que encontre haciendo busqueda en google con terminos javascript sleep. no lo he leido detenidamente pro quizas te ayude. http://www.daniweb.com/forums/thread47199.html
__________________ la maldad es una virtud humana, y la espiritualidad es la lucha del hombre contra su maldad. |
| ||||
Respuesta: Pausar Ejecucion de JS ya revise la pagina y el metodo que usan no es lo que yo esperaba. por lo que veo es que la unica forma es usando setTimeot, pero ahora el problem es como hago para aplicar eso en el siguiente script
Código Javascript:
Ver original |
| ||||
Respuesta: Pausar Ejecucion de JS en este caso no creo que setTimout sea la solucion ya que requieres que pase a la proxima instruccion por accion del usuario. asi de momento, lo que se me ocurre es una funcion que se encarga de invocar tus funciones, pero una a una. estas funciones estan almacenada en un array. en cada llamada de esta funcion se invoca una sola funcion del array y se elimina del array. no es la mejor forma de escribirlo pero si de ilustrarlo, por ejemplo:
Código:
caller vendria siendo la funcion que debe invocarse cuando el usuario requiera pasar al proximo. var funciones = [function(){ // si tu funcion requiere parametros, creas funciones anonimas como en este ejemplo; // y dentro de esa funcion haces la invocacion con los argumentos necesarios; alert('primera funcion'); }, function(){ alert('segunda funcion'); }, function(){ alert('tercera y ultima funcion'); } ]; function caller(){ try{ funciones.shift()(); }catch(e){} }
__________________ la maldad es una virtud humana, y la espiritualidad es la lucha del hombre contra su maldad. Última edición por zerokilled; 30/01/2010 a las 12:37 Razón: simplificar una linea de codigo |
| ||||
Respuesta: Pausar Ejecucion de JS ademas del codigo que mostre, agrega lo siguiente. lo cargas en el navegador y luego vas haciendo click. veras que cada vez que caller se invoca, en este caso por medio del evento onclick, dentro de caller se invoca las funciones que antes defini en el array. en cada invocacion de caller se invoca una funcion distinta.
Código:
lo mismo puede aplicarse el boton que tendra el usuario. o al control que vayas a proveerle al usuario. self.onclick = caller;
__________________ la maldad es una virtud humana, y la espiritualidad es la lucha del hombre contra su maldad. |
| ||||
Respuesta: Pausar Ejecucion de JS bueno, creo que ya entendi y como puedo modificarlo, ahora para evitar hacer mas post quiero que me ayudes en el siguiente script
Código Javascript:
Ver original la consola de erroes me dice: Error: invalid assignment left-hand side Línea: 19, columna: 5 Código fuente: this={ no se que es lo que causa el error ya he intentado muchas cosas PS: perdon por los errores del script, es que es hecho a mano Última edición por ClubIce; 29/01/2010 a las 20:22 |
| ||||
Respuesta: Pausar Ejecucion de JS el problema esta en la funcion Animation. hay varias razones para que suceda dicho error pero en este caso es porque estas intentando asignar un valor directamente al objeto this. a mi entender, tu quieres inicializar this con un objeto que ya tiene las propiedades declaradas. no estoy muy claro porque nunca lo he realizado de esa manera, pero creo que no puedes hacerlo asi porque this es un objeto reservado para ese constructor. tienes dos opciones: al estilo vieja escuela, o creas una funcion que inicialice this pasandole un objeto. quizas la segunda opcion parece estupida, pero veremos. la vieja escuela es la forma comun y corriente.
Código:
la otra opcion, es una funcion que itera por las propiedades de un objeto y se van asignando al objeto this. quizas algo como sigue:function(){ this.nombre = valor; // se repite tantas veces sea necesario inicializar el objeto; ... }
Código:
Object.prototype.initialize = function(init){ for(var prop in init)if(init.hasOwnProperty(prop)) this[prop] = init[prop]; } // se usa de la siguiente manera; Animation = function(sprite, speed){ this.initialize({spr: sprite, spd: speed, frame:[]}); }
__________________ la maldad es una virtud humana, y la espiritualidad es la lucha del hombre contra su maldad. |
| ||||
Respuesta: Pausar Ejecucion de JS Hola, aqui estoy de nuevo, ya estoy arreglando el anterior script y se me presenta un error:
Código Javascript:
Ver original al ejecutarlo me muestra el siguiente error: Error: spr.sprite.image is undefined Archivo de origen: http://localhost/icepokemon/index.htm Línea: 35 en realidad es que no se como acceder a this.sprite.image.src dentro de otra la inicializacion de otro??? |
| ||||
Respuesta: Pausar Ejecucion de JS ¿que tipo de dato es spr..sprite.image? aparentemente no estas pasando el valor correcto cuando creas una instancia de Animation.
__________________ la maldad es una virtud humana, y la espiritualidad es la lucha del hombre contra su maldad. |
| ||||
Respuesta: Pausar Ejecucion de JS si bien entiendo, tu creas una instancia de Sprite. luego esa instancia se la pasas como argumento a Animation. bien, si vuelve al mensaje #8 en la linea #3 de tu codigo estas creando una variable llamada image en lugar de crear una propiedad image para la clase Sprite.
__________________ la maldad es una virtud humana, y la espiritualidad es la lucha del hombre contra su maldad. |
Etiquetas: |