Transition.start = function(){
for(var j = 0; j < 6; j++)
{
console.log("FOR LOOP");
(function(){
console.log("INNER Function");
var image = new Image();
image.src = path + Config.imgName[j] + ".jpg";
image.onload = function() {
console.log("GONE");
clearImages[source].push(image);
console.log(image);
};
})();
}
}
В этом случае на консоли «FOR LOOP» и «INNER Function» печатается 6 раз, но «GONE» печатается 12 раз. Я не могу понять причину этого. Я хочу также запустить тело onload 6 раз.Javascript: функция перегрузки, называемая дважды
и Transition.start
вызывается из onDocumentKeyDown
слушателя как этот
function onDocumentKeyDown(event)
{
if (keyPressed == 38) //up arrow
Transition.start();
}
Покажите нам код, в котором эта функция вызывается, –
Я думаю console.log (изображение) называет «image.onload» и, следовательно, «GONE» печатается много раз. –
Вы попробовали 'console.trace()'? – andale