PDA

Просмотр полной версии : Проблема с выполнением функции


DesArt2006
18.12.2006, 00:46
Задача:
На страничке есть checkbox и мувик. Ставлю флажок, в мувик передается имя checkbox'a. Параметр передается (проверила через Dynamic Text-> Var). Но мне нужно, чтобы кнопка исчезала по этому действию. Попробовала сделать функцию, где n-переданный из javascript параметр.
//просто для теста
function test(n) {
if (n==129) {
button1._visible=false;
}
}
[iNils: Для оформления своего кода, надо использовать теги ]

, но в var похоже функцию с параметром нельзя присвоить.
Как быть, может у кнопки есть какое-нибудь событие по которому можно было бы функцию вызвать c переданным параметром?
Надеюсь описала понятно. Помогите, нужно очень срочно, уже сижу часа 4 парюсь.

aksios
18.12.2006, 00:59
n=129;
function test() {
if (n==129) {
button1._visible=false;
}
}
test(n);
И в чем проблем?:boredom:

DesArt2006
18.12.2006, 02:21
Проблема в том, как вызвать эту функцию, откуда? чтобы функция сработала, наверное какое-то событие должно быть, или я передаю из JS параметр, пишу функцию прямо в таком виде в Action первого попавшегося слоя и все должно работать? Думаю вряд ли. Вникните пожалуйста в текст проблемы.

Может я что-то не правильно описываю?
checkbox на странице html, кнопка в мувике, нужно ее сделать невидимой
передаю параметр в мувик (это id checkboxa).
Дальше думаю алгоритм такой:
Если параметр равен такому-то значению, сделать кнопку невидимой.
Где это нужно написать?

Kikasso
18.12.2006, 03:09
почитай про watch
или addProperty
Суть в том, что при изменении переменной вызывается функция.
ЗЫ. из js наверняка придет строка! Сравнивать ее с цифрой опрометчиво.

сделать кнопку невидимой можно и напрямую джаваскриптом, только надо путь указывать в слеш-нотации и свойство указать по-хитрому. Поройся на адобе, может можно и функцию напрямую вызвать. Рыть надо в этих краях:
http://www.adobe.com/support/flash/publishexport/scriptingwithflash/scriptingwithflash_04.html
Там написано, что методы для 5-ки, это просто они так часто обновляют инфу. Все работает.

MOHCTEP
18.12.2006, 03:26
var chk=0;// Переменная, которую будем отслеживать
var endStatus=129;//Значение, при котором пропадает кнопка
this.watch('chk', watcher);

function watcher(prop, oldVal, newVal){
if(newVal==endStatus){
my_btn._visible=false;
this.onEnterFrame=null;
}
trace(newVal);
return newVal;
}
//Моделируем событие изменения значения переменной
this.onEnterFrame=function(){
chk++;
}
Может это ам поможет?

aksios
18.12.2006, 06:50
Проблема в том, как вызвать эту функцию, откуда? чтобы функция сработала, наверное какое-то событие должно быть, или я передаю из JS параметр, пишу функцию прямо в таком виде в Action первого попавшегося слоя и все должно работать? Думаю вряд ли. Вникните пожалуйста в текст проблемы.
Да почему же вряд ли?
Вы пишите: Параметр передается (проверила через Dynamic Text-> Var).
Я написал исправленый рабочий вариант - пишите енто дело на основной временой шкале на отдельном слое и функция будет вызываться каждый раз, как мувик проигрываеться заново. test(n); для убедительности можно запускать и в setInterval - но по моему, для вашего случая это избыточно.

Kikasso
18.12.2006, 07:30
aksyos, а чем вас watch не устраивает? Специально придумано, параметр затронут - функция вызвана. Не в каждом кадре, не тогда когда мувик проиграется, а именно тогда, когда надо.

aksios
18.12.2006, 07:49
aksyos, а чем вас watch не устраивает? Специально придумано, параметр затронут - функция вызвана. Не в каждом кадре, не тогда когда мувик проиграется, а именно тогда, когда надо.
Да меня ваще все устраивает, я въехать не могу, как без конкретного примера можна медитировать ;) - цель не оправдывает средства.

Kikasso
18.12.2006, 08:10
я въехать не могу, как без конкретного примера можна медитировать
Медитация - это когда рисуешь точку, две недели в нее смотришь, пока весь мир не исчезанет и останется только эта точка, и в этот момент точка становится всем миром, и все становится понятно, даже то о чем не подозревал. А вы говорите - конкретный пример.
Автор, и правда, давайте чтоли примерчик чтоли.