Воспроизвести 2-е флэш видео после первого конца - PullRequest
4 голосов
/ 14 декабря 2010

У меня есть флэш-объект, настроенный в стандартном формате:

<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF("swfplayer.swf", "myContent", "300", "120", "9", "expressInstall.swf");
</script>

но я хочу начать воспроизведение второго флеш-видео на другой части веб-страницы в тот момент, когда заканчивается первое видео. Есть ли какой-нибудь слушатель для использования?

Спасибо

Ответы [ 3 ]

2 голосов
/ 22 декабря 2010

На самом деле есть способ сделать это, при условии, что ваш фильм более или менее основан на временной шкале.Есть пара вызовов, которые вы можете сделать для flash-объекта через javascript, который вернет вам значения, с которыми вы можете проверить, чтобы определить, завершен ли фильм.

Для получения текущего кадра фильма используйте:

document.getElementById("myFlashObject").TCurrentFrame("_root");

Чтобы проверить, воспроизводится ли фильм, используйте:

document.getElementById("myFlashObject").IsPlaying()

Если фильм останавливается на кадре с использованием метода stop (), возвращается значение false.Также можно использовать несколько других методов, которые могут оказаться полезными при воспроизведении другого фильма.Вот ссылка на справочные документы Adobe:

http://www.adobe.com/support/flash/publishexport/scriptingwithflash/scriptingwithflash_03.html

Примечание: Я проверил это, и он работает с Flash Player 10 в Firefox.Вы можете дважды проверить кросс-браузерную совместимость этих методов.

1 голос
/ 14 декабря 2010

Вы можете подойти к этому из этих двух возможностей: LocalConnection или ExternalInterface .

Я бы пошел с ExternalInterface лично.С его помощью вы можете настроить функцию javascript, которая получает вызов от videoPlayer_1, когда заканчивается его видео.Для этой функции javascript вы можете передать идентификатор, чтобы определить, какой игрок закончил, а затем отправить вызов обратно соответствующему следующему игроку, чтобы сообщить ему, чтобы он начал играть.Вы можете повторить этот процесс столько раз, сколько у вас / swf с видео.

Я бы включил пример, но вы не упомянули as2 или 3.

Что касается LocalConnection, вы можете создать группу фильмов с локальным подключением к данным, но это легко нарушается некоторыми сценариями нескольких браузеров / swfs, поэтому, вероятно, не самый надежный метод.Однако, если вы хотите попробовать, посмотрите на класс Гранта Скиннера SwfBridge, чтобы все стало намного проще.

0 голосов
/ 14 декабря 2010
...