![]() |
переменная как параметр функции
Добрый день..
помогите пожауйста в следующем: у меня написана функция function mike (param1) {.....} так вот, если param1 вписывать прямо ручками типа mike (5) то все работает.. а мне нужно туда вставить переменную.. с этим засада. вот такой код: for (i=0; i<num1; i++) { param1 = "this.kn" add i; trace (param1); //выдает this.kn0 , то что мне надо (без кавычек, все правильно). mike(param1); .. не работает... а если вставлять в параметр тот самый результат трейса, все ок. mike(this.kn0); МОЖНО ЛИ ВСТАВЛЯТЬ ПЕРЕМЕННЫЕ КАК ПАРАМЕТР ФУНКЦИИ? и как? |
for (i=0; i<num1; i++) {
mike(this["kn"+i]); } |
Спасибо огромное!! все получилось!
|
Проблема твоя была в том, что ты передовал строку, а не ссылку на переменную. И трейс должен был показывать значение переменной, а не путь до нее с именем.
|
хорошо... дальше у меня встает другая проблема
(вобще я пытаюсь со своими повехностными знаниями в AS написать 2-мерное меню с редактируемыми звне пунктами (в текстовике)( :cool: ) есть глобальная функция (взял на форуме) _global.dClip = function(movclip, numclips, shifty) { var clipname = movclip._name; trace (clipname); trace(_root[clipname]._y); var newname = ""; for (i=1; i<=numclips; i++) { newname = clipname+i; trace (newname); duplicateMovieClip(clipname, newname, this.getNextHighestDepth()); _root[newname]._y += shifty; trace(_root[newname]._y); shifty += 10; } } потом вызываю функцию кнопкой on (release) { dClip(this.kn0, 3, 20); } трейс выдает вроде правильные значения kn0 164.85 kn01 184.85 kn02 194.85 kn03 204.85 но новый mc создается только один (вместо 3х).. я проверял, создается только kn03... почему?.. :eek: |
_global.dClip = function (movclip, numclips, shifty)
{ for (i = 1; i <= numclips; i++) { duplicateMovieClip (movclip, movclip._name+i, getNextHighestDepth ()); _root[movclip._name+i]._y += shifty*i; } }; мож так? |
да, получилось! спасибо оромное.. я дилетант, н решение с shifty*i мне показалось элегантным :-)
глядишь так общими усилиями напишем мое меню, выложу обязательно |
такк-с.. теперь такая у меня морока..
исходная кнопка меню педсавляет собой мувик в котором 3 слоя (подложка, отекстовый блок (txtnaknopke), и кнопка с событием on (release) {getURL(urla);}) дублирование кнопок меню вызывается событием: on (release) { for (i=1; i<3; i++) { this["kn"+i].txtnaknopke.text = l_a(0,i);//l_a - это функция возвращает имя для кнопки из 2мерного массива или ссылку (если есть 3й параметр. она работает, все возвращает правильно...) this["kn"+i].but.urla = l_a(0,i,0); // вот тут как раз присваивается переменной ссылка. trace (this["kn"+i].but.urla); //возвращает все ништяк h01.html h02.html h03.html h04.html как забито в массиве. } } а раньше, на предыдущей стадии, у меня на кнопке переменная была дана как this.parent.urla (то есть кнопа сама брала значение переменной с верхнего уровня и все работало), а теперь то у меня не одна кнопка, поэтому надо именно каждой копии исх. кнопы насаждать разное значение urla.. то есть сверху. и так не работает. undefined мать его... :mad: |
1. я бы не стал использовать кнопку в клипе только для ссылки (если надо - то надо, но я надобности не вижу)
2. ниченипонял что не работает? где ундеф? как ты его пытаешься взять? |
ну у меня создаются мувиклипы в которых кнопки (this.kn1.but и таких несколько) потом им передается каждой разный урл (переменная urla) но в том то и дело что не передается.. когда я прописывал в этой кнопке ссылку на верхний уровень
on (release) { getURL(this._parent.urla); } тогда все работало, но тогда у всех кнопок будут одинаковые урлы... а надо именно при создании дубликата ему сверху говорить что мол у тебя такая urla, а у тебя такая. вот |
| Часовой пояс GMT +4, время: 22:29. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.