PDA

Просмотр полной версии : не вижу смысла! ужас... уже чего только не делал


DEAFFF
28.10.2005, 20:23
кароче у меня есть три кнопки _root.direct0,_root.direct1,_root.direct2

текст вот такой....

onEnterFrame=function(){

for(var i=0;i<3;i++){
var name_clip="direct"+i
_root[name_clip].onPress = function () {
trace(i)
}//end onPress
}//end for
}//end onEnterFrame=function()

смысл такой... нажимаем кнопку - он должен писать какую т.е. 0, 1 или 2...... т.к. кнопки три я сделал их for.... но почему то он всегда выводит 3!!!!! т.е. последнее i :))) че за фигня?

причем самое удивительное, что вот так все работает хорошо:

i=1
var name_clip="direct"+i
_root[name_clip].onPress = function () {
trace(i)
}

т.е. выводит 1 так как положено! в чем ошибка ума не приложу...
for нужен т.к. там будет не одна кнопка а много....

помогите пожалуйста!!!!

Mokus
28.10.2005, 20:31
А смысла и нет. Все вокруг матрица.
onEnterFrame=function(){

for(var i=0;i<3;i++){
var name_clip="direct"+i
_root[name_clip].onPress = function () {
trace(this.index);
}//end onPress
_root[name_clip].index = i;
}//end for
}//end onEnterFrame=function()

DEAFFF
28.10.2005, 20:32
оооо!!!! это вариант! счас попробую! ;)

DEAFFF
28.10.2005, 20:37
спасибо! все работает! ;)

Mokus
28.10.2005, 20:47
незачто. иди за белым кроликом.

kruasan
28.10.2005, 20:50
2 DEAFFF
Если все еще интересует смысл...
смысл в том, что i добегает до 3 еще до того как ты нажал на какую-либо кнопку.

DEAFFF
28.10.2005, 20:52
2 DEAFFF
Если все еще интересует смысл...
смысл в том, что i добегает до 3 еще до того как ты нажал на какую-либо кнопку.

спасибо! теперь все ясно... ;)