PDA

Просмотр полной версии : externalinterface пропадают стандартные функции button...


Viy
31.01.2010, 07:15
vid1 - мувик внутри которого кнопка, в кадре такой код:
import flash.external.ExternalInterface;

vid1.onRelease = function() {
ExternalInterface.call("tb_show",null,"index2.html?placeValuesBeforeTB_=savedValues&TB_iframe=true&height=470&width=600&modal=true",false);
};

код вызывает жаваскрипт в фрейме, все работает и открывается.

Вопрос: как заставить кнопку при наведении мышки менять свой цвет?
т.к. стандартный переход по кадрам перестает работать, точечный вызов RollOver тоже не работает...

mooncar
31.01.2010, 09:02
Кнопке не дает работать обработчик, повешенный на родителя.
Не вешайте обработчики на разные уровни иерархии.
Уберите вообще кнопку и забудьте про символы Button, если хотите, чтобы все работало корректно.

В мувике делается 3 кадра - первый исходный, второй для наведенного состояния, третий для нажатого (onPress)

import flash.external.ExternalInterface;

btn.onRollOver = btnRollOver;
btn.onRollOut = btnRollOut;
btn.onDragOut = btnRollOut;
btn.onPress = btnPress;
btn.onRelease = btnRelease;

function btnRollOver () {
this.gotoAndStop(2);
}
function btnRollOut () {
this.gotoAndStop(1);
}
function btnPress () {
this.gotoAndStop(3);
}

function btnRelease () {
this.gotoAndStop(1);
ExternalInterface.call("tb_show", null, "index2.html?placeValuesBeforeTB_=savedValues&TB_iframe=true&height=470&width=600&modal=true", false);
}

Выносить функции ссылками удобно, так как те же самые функции можно будет назначать и другим кнопкам или использовать иначе..
Про DragOut тоже никогда не забывайте, чтобы глюков не было - юзеры такие...