![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2007
Сообщений: 19
|
trace (counter) при клике всегда выдает 4...
почему??? и как заставить выдавать 1 при клике по первому, 2 по второму и т.д.? for (counter = 1; counter <= 3; counter++) {
currentImgBut = "imgBut" + counter;
_root.imageNum.attachMovie("imgBut", currentImgBut, _root.imageNum.getNextHighestDepth());
_root.imageNum[currentImgBut].imgNumText.text = counter;
_root.imageNum[currentImgBut]._x = _root.imageNum[currentImgBut]._width * counter;
_root.imageNum[currentImgBut].onRelease = function () {
//_root.galleryLoader.loadClip (counter + ".jpg", _root.galleryImages);
trace (counter);
}
}
|
|
|||||
|
Регистрация: Feb 2007
Сообщений: 19
|
Даже если написать так
for (counter = 1; counter <= 3; counter++) {
_root.imageNum["imgBut" + counter].onRelease = function () {
_root.galleryLoader.loadClip (counter + ".jpg", _root.galleryImages);
}
}
![]() |
|
|||||
|
Это потому что сначала плеер пройдет цикл и только потом он вернеться к обработчикам событий(это видно в дебагере)...
Не очень красиво, но работает... |
|
|||||
|
Регистрация: Feb 2007
Сообщений: 19
|
Все время 3 выдает.
Т.е. нет ни 1, ни 2, а только 3. Последний раз редактировалось sokiche; 14.02.2007 в 00:04. |
|
|||||
|
Регистрация: Feb 2007
Сообщений: 24
|
попробуй им всем ставить разные имена и на клик выдавать ответ в зависимости от имени. а имена нужно всегда давать разные
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Все верно, после выполнения цикла значение counter будет равно четырем. Именно эту переменную вы трейсите. Нужно делать так:
for (counter = 1; counter <= 3; counter++) {
currentImgBut = "imgBut" + counter;
var mc = _root.imageNum.attachMovie("imgBut", currentImgBut, _root.imageNum.getNextHighestDepth());
mc.imgNumText.text = counter;
mc._x = _root.imageNum[currentImgBut]._width * counter;
mc.id = i;
mc.onRelease = function () {
trace (this.id);
}
}
|
|
|||||
|
Регистрация: Feb 2007
Сообщений: 19
|
Обалдеть!
Спасибо! Работает. Что-то я в доках ID не видел. |
|
|||||
|
Регистрация: Feb 2006
Сообщений: 580
|
Его и нет. Это новое свойство, которое создается динамически для каждого мувиклипа и сохраняет текущее значение counter.
__etc А можно как-то без добавления нового свойства? ![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Можно. Но MovieClip — динамический класс. С id вернее было бы.
Лично я бы сделал подкласс MovieClip с заданным свойством id. |
|
|||||
|
Регистрация: Feb 2006
Сообщений: 580
|
Да-да. Я тоже сейчас задумался над этим.
Только взвешиваю, можно сказать, трудозатраты. Создавать дин. свойство проще... |
![]() |
![]() |
Часовой пояс GMT +4, время: 05:35. |
|
|
« Предыдущая тема | Следующая тема » |
|
|