Pregunta

Tengo que ser capaz de esperar para iniciar una función hasta que la altura y la anchura de una imagen están disponibles. Cuando comienzan Este código llama (), todavía dice que la altura y la anchura son iguales a cero:

var img = new Image();

init = function() {
    img.onload = this.start();
    img.src = "sky.jpg";
    }

start = function() {
    alert("Start called.\nwidth:"+img.width+"\nheight"+img.height);
    }

init();

¿Cómo puedo hacer que esperar a que las dimensiones están disponibles antes de llamar a start ()?

¿Fue útil?

Solución

var img = new Image();

var start = function() {
    alert("Start called.\nwidth:"+img.width+"\nheight"+img.height);
}

var init = function() {
    img.onload = start;
    img.src = "sky.jpg";
} 

init();

Cambiar this.start() a start.

También con ámbito de sus funciones.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top