PDA

Просмотр полной версии : проблема с eval()


slavijan
04.09.2006, 16:53
Всем привет! Есть простенький код:
switch(_root.my_menu)
{
case "sufism": my_punkt_var= "punkt_color1"; break;
case "centers": my_punkt_var= "punkt_color2"; break;
case "events": my_punkt_var= "punkt_color3"; break;
};
eval("punkt" + i).onRollOver = function(){
this.eval(my_punkt_var).gotoAndPlay(2);
}
По идее должен в зависимости от переменной my_menu проигывать разные мувики, но этого не происходит. Видимо неправильно использую eval :)
Помогите плиз разобраться :)

Nirth
04.09.2006, 17:01
могу гарантировать что у this нету метода eval

slavijan
04.09.2006, 17:04
Да я понимаю что нет! :) просто надо в эту часть кода (this.blabla) вставлять строку из переменной my_punkt_var. А как это сделать незнаю. Просто не хотелось бы для каждого случая писать много кода, хочется присвоить переменной значение и потом его использовать.

iNils
04.09.2006, 17:12
this["punkt" + i]

Juice_Green
04.09.2006, 17:17
2slavija:

а что мешает сразу
this["punkt"+i].onRollOver = function(){
this['punkt_color'+_root.my_menu].gotoAndPlay(2);
}

где _root.my_menu = 1 || 2 || 3

slavijan
04.09.2006, 17:24
Не работает вот эта часть:
this.eval(my_punkt_var).gotoAndPlay(2);
как ее можно переписать, чтобы на этом дин. созданном мувике (на котором лежат несколько мувиков punkt_color1, punkt_color2, punkt_color3) проигрывался именно тот ролик который нужно (исходя из switch)

slavijan
04.09.2006, 17:56
респект to Juice_Green, так и сделал, спасибо. Только названия там не простые типа пункт_1 итд, а посложнее типа пункт_значение1 но это не беда :)