PDA

Просмотр полной версии : .onMouseDown/onRelease = function() не выполняется... знатоки, подскажите почему?


KOCTuK
11.11.2008, 14:32
Функция из примера (с книги Мука)...

makeQuestion(currentQuestion);

function makeQuestion(currentQuestion) {
// clear the stage of the last question
questionClip.removeMovieClip();
// create and place the main question clip
attachMovie("questionTemplate", "questionClip", 0);
questionClip._x = 277;
questionClip._y = 205;
questionClip.qNum = currentQuestion+1;
questionClip.qText = questionsArray[currentQuestion].questionText;
// create the individual answer clips in the question clip
for (var i = 0; i<questionsArray[currentQuestion].answers.length; i++) {
questionClip.attachMovie("answerTemplate", "answer"+i, i);
questionClip["answer"+i]._y += 70+(i*15);
questionClip["answer"+i]._x -= 100;
questionClip["answer"+i].answerText = questionsArray[currentQuestion].answers[i];
questionClip["answer"+i].onMouseDown = function() {
trace(1)
// answer(i);
};
}
}

Всё отрабатывает нормально, но вот это:

questionClip["answer"+i].onMouseDown = function() {
trace(1)
answer(i);
};
Процедура answer() на руте есть, но не выполняется даже Трейс(
ПОЧЕМУ? Что- то в познаниях ООП пропустил?)

Валиант
11.11.2008, 14:44
может questionsArray[currentQuestion].answers.length у вас undefined?

alexcon314
11.11.2008, 15:03
KOCTuK , отредактируйте свой пост и оформите код тэгами