Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Как остановить музыку в клипе при нажатии на ссылку вне клипа?
Flash Zone Forum > Macromedia Flash > Начинающим
barcelona
Здравствуйте!
Мне нужно, чтобы при нажатии на одну ссылку (в HTML-документе за пределами ролика), музыка в клипе останавливалась (именно музыка, а анимация продолжалась), а при нажатии на другую ссылку - возобновлялась. Пробовал через JavaScript, однако после применения метода StopPlay() останавливалась только анимация, а звук продолжал играть. Значит, насколько я понимаю, нужно передать в ролик значение (например stop=1) и чтобы в самом ролике проверялось что-то вроде
Код
if (stop==1) stopAllSounds;

Однако как передать это значение в ролик? FlashVars в теге param можно передать только однажды, при инициализации ролика. Мне же нужно, чтобы это происходило при нажатии на ссылку. Как это сделать? Может есть какой-то другой способ решить мою проблему?
Заранее спасибо.
MustLive
Цитата
Мне нужно, чтобы при нажатии на одну ссылку (в HTML-документе за пределами ролика), музыка в клипе останавливалась

barcelona

Тебе нужно передать команду из JS в AS, для того чтобы выключить звук (например с помощью команды stopAllSounds выключить весь звук во флешке). Для этого используются специальные флеш методы для передачи команд во флеш.

В твоём случае используй следующий алгоритм.

Сделай на сцене дополнительный мувиклип mc (контейнер для команд), в котором в первом кадре укажи stop. Чтобы изначально он был отключён. Во втором кадре укажи требуемые команды:
Код
stop();
stopAllSounds();

В html файле с данной флешкой укажи следующий код в теге <head>:
HTML
<script language="JavaScript">
var moviename = "js-to-as";
function movieobject(moviename) {
if (navigator.appName.indexOf ("Microsoft") !=-1) {
return window[moviename];
}
else {
return document[moviename];
}
}
function StopSound() {
movieobject(moviename).TCallFrame("/mc",1);
}
</script>

В html коде укажи в OBJECT и EMBED имя флеш объекта:
Код
<OBJECT id="js-to-as" ...>
<EMBED NAME="js-to-as" ...>

А в теле страницы укажи код для вызова управляющей функции:
HTML
<a href="#" onClick="StopSound()">Stop Sound</a>
Русская версия IP.Board © 2001-2008 IPS, Inc.