Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 05.07.2012, 14:32
mheha вне форума Посмотреть профиль Отправить личное сообщение для mheha Найти все сообщения от mheha
  № 1  
Ответить с цитированием
mheha

Регистрация: Jun 2012
Сообщений: 16
По умолчанию как остановить воспроизведение видео?

если повесить на кнопку функцию остановка видео:
vid.stop();
остановка работает правильно, а как задать условие, типа: "если видео воспроизводится, то стоп"

если сделать так:
Код AS1/AS2:
if (vid.play)=true
{
vid.stop();
}
ошибка, флеш не работает , а если так:
Код AS3:
if (vid.play) {
vid.stop();
}
, то ошибка: Монтажный кадр 1, слой "bg", кадр 1, строка 22 Warning: 3553: Вместо ожидавшегося значения типа Boolean использовалось значение функции. Возможно, отсутствуют скобки () после ссылки на эту функцию.


код целиком:
Код AS3:
import flash.net.URLLoader;
import flash.events.Event;
import flash.net.URLRequest;
 
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE,xmlloaded);
 
var xml:XML = new XML();
var amountofvid:Number=0;
var currentvideo:Number=0;
 
btn1.addEventListener(MouseEvent.CLICK, nextvid);
btn2.addEventListener(MouseEvent.CLICK, prevvid);
btn3.addEventListener(MouseEvent.CLICK, stopvid);
 
function xmlloaded(e:Event){
	xml=XML(e.target.data);
	amountofvid=xml.video.length()-1;
	changevid();
}
function stopvid(e:Event){
vid.stop();
}
function nextvid(e:Event){
	currentvideo++;
	changevid();
}
 
function prevvid(e:Event){
	currentvideo--;
	changevid();
}
 
function changevid():void{
	var cv:Number=Math.abs(currentvideo);
 
	if (cv>amountofvid){
		currentvideo=cv=0
	}
	if (amountofvid<0){
		currentvideo=cv=amountofvid;
	}
	t_txt.text=xml.video.@title[cv];
	vid.source=xml.video.@src[cv];
}
 
loader.load(new URLRequest('videos.xml'));


Последний раз редактировалось mheha; 05.07.2012 в 14:58. Причина: попробовал по=другому
Старый 05.07.2012, 15:08
dmitry bond вне форума Посмотреть профиль Отправить личное сообщение для dmitry bond Найти все сообщения от dmitry bond
  № 2  
Ответить с цитированием
dmitry bond
 
Аватар для dmitry bond

Регистрация: Jan 2010
Адрес: владивосток
Сообщений: 250
Код AS3:
play()
это метод, его никак не получится использовать как свойство.
1) Зачем нужно проверять ?? Разницы по сути нет никакой, между
Код AS3:
.stop()
и проверкой, а потом остановкой.
2) Если вам это действительно важно, вы сами должны знать когда видео воспроизводится, а когда останавливается. Поэтому можно создать переменную
Код AS3:
var isPlay = false;
или true если воспроизведение автоматическое. И менять значение при каждой остановке или воспроизведении

Старый 05.07.2012, 15:28
mheha вне форума Посмотреть профиль Отправить личное сообщение для mheha Найти все сообщения от mheha
  № 3  
Ответить с цитированием
mheha

Регистрация: Jun 2012
Сообщений: 16
смысл в общем такой:
несколько страниц на сайте, на одной из них выполнен код описанный выше, уходим с этой страницы на другую и видео проигрывается, вот я и думаю как его остановить?

Старый 05.07.2012, 15:59
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 4  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Код AS3:
if(ExternalInterface.call('window.location') != 'firstPage') остнови
__________________
Марк Tween

Старый 05.07.2012, 17:15
mheha вне форума Посмотреть профиль Отправить личное сообщение для mheha Найти все сообщения от mheha
  № 5  
Ответить с цитированием
mheha

Регистрация: Jun 2012
Сообщений: 16
Цитата:
Сообщение от in4core Посмотреть сообщение
Код AS3:
if(ExternalInterface.call('window.location') != 'firstPage') остнови
неправильно я наверное выразился, страница одна, кнопок несколько текст страниц показывает TweenLite
сцена тоже одна, кадр один, нужна функция, которая проверяла бы если видео воспроизводится то остановить.
Просто если делать это без проверка типа:
Код AS3:
vid.stop();
то перестает работать Tween

Добавлено через 28 минут
исправился сам
короче так:
1) вначале объявляем переменную типа булеан isPlay присваиваем ей false
2) при нажатии на любую кнопку меню выполняем функцию:
Код AS3:
function stopVid():void{
if(isPlay)
{
vid.stop();
}
}
3) на всех кнопках говорим:
Код AS3:
isPlay=false();
обязательно после выполнения функции stopVid
4) на кнопке показа видео говорим:
Код AS3:
isPlay=true();
все ок!

Создать новую тему Ответ Часовой пояс GMT +4, время: 09:41.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
видео video flv , плеер

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 09:41.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.