Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.06.2012, 12:36
Профессор
Отправить личное сообщение для (Sandr) Посмотреть профиль Найти все сообщения от (Sandr)
 
Регистрация: 14.10.2010
Сообщений: 376

Не получается словить loadedmetadata
Всем привет) Подскажите, как правильно узнать длину видео?
Как я понял, для этого нужно дождаться его загрузки, после чего происходит событие loadedmetadata, которое оповещает о том, что видео было загружено. Вешаем слушатель на этот обработчик и смотрим свойство duration объекта видео. Но у меня возникли проблемы с этим.
Прошу помощи знающих)

Сам код:
<html>
    <head>
    </head>
    <script>
    window.onload = function() {
      var V = document.getElementById("video1"),
          playButton = document.getElementById("play"),
          duration = document.getElementById("duration");
    
    
    V.addEventListener("loadedmetadata", function() {
        duration.innerHTML = V.duration;
    }, false);
    
    playButton.addEventListener("click", function() {
          V.play();
      }, false);
}
    </script>
  <body>
    <video id="video1">
      <source src="video.mp4" type="video/mp4"/>
    </video>
    <br>
    <button id="play" type="button">Play</button>
    <span id="duration">0</span><br>
    </body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 23.06.2012, 14:55
Аватар для NoResponse
Профессор
Отправить личное сообщение для NoResponse Посмотреть профиль Найти все сообщения от NoResponse
 
Регистрация: 17.06.2010
Сообщений: 152

рекомендую почитать
http://www.thevista.ru/page13925-mul...eo&ratin gs=1
конкретно 3.3.1 и 3.3.3

еще по теме
http://developer.apple.com/library/s...avaScript.html
https://developer.mozilla.org/en/DOM/Media_events
http://dev.opera.com/articles/view/e...deo-and-audio/
http://blog.gingertech.net/wp-conten...oc2011/#slide5

вообще примерно пол года назад баловался... так браузеры вели себя по разному, как сейчас обстоят дела не знаю
Ответить с цитированием
  #3 (permalink)  
Старый 24.06.2012, 00:58
Профессор
Отправить личное сообщение для (Sandr) Посмотреть профиль Найти все сообщения от (Sandr)
 
Регистрация: 14.10.2010
Сообщений: 376

NoResponse,
спасибо конечно, но это не совсем помогло. Штука в том, что при первой загрузке событие происходит, а если перезагрузить страницу, то не происходит. Это из-за того, что видео уже загружено в кэш?
Ответить с цитированием
  #4 (permalink)  
Старый 24.06.2012, 01:02
Профессор
Отправить личное сообщение для (Sandr) Посмотреть профиль Найти все сообщения от (Sandr)
 
Регистрация: 14.10.2010
Сообщений: 376

Ещё есть вопрос..
Есть такой код:
<video id="video1">
  <source src="video.mp4" type="video/mp4">
  <source src="video.ogg" type="video/ogg">
</video>


Как изменить оба вложенных тега <source> ? К примеру, чтобы было так
<video id="video1">
  <source src="video11.mp4" type="video/mp4">
  <source src="video11.ogg" type="video/ogg">
</video>
Ответить с цитированием
  #5 (permalink)  
Старый 24.06.2012, 09:58
Профессор
Отправить личное сообщение для bot87 Посмотреть профиль Найти все сообщения от bot87
 
Регистрация: 16.05.2011
Сообщений: 307

так?
source=document.getElementById("video1").getElemen tsByTagName("source")
source[0].src="";
source[1].src="";
__________________
Я только учусь.Ногами просьба не бить
Ответить с цитированием
  #6 (permalink)  
Старый 24.06.2012, 13:28
Профессор
Отправить личное сообщение для (Sandr) Посмотреть профиль Найти все сообщения от (Sandr)
 
Регистрация: 14.10.2010
Сообщений: 376

bot87,
атрибуты меняются, но видео остаётся тем же самым..
Ответить с цитированием
  #7 (permalink)  
Старый 24.06.2012, 14:36
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,220

Сообщение от (Sandr)
спасибо конечно, но это не совсем помогло. Штука в том, что при первой загрузке событие происходит, а если перезагрузить страницу, то не происходит. Это из-за того, что видео уже загружено в кэш?
Попробуйте после видео воткнуть однопиксельную картинку и по событию загрузки вызывать ту же функцию,
в обработке события, отключать повторное использование, дабы при первой загрузке - не дублировать, А при обновлении страницы функцию будет вызывать картинка
Ответить с цитированием
  #8 (permalink)  
Старый 24.06.2012, 21:21
Профессор
Отправить личное сообщение для (Sandr) Посмотреть профиль Найти все сообщения от (Sandr)
 
Регистрация: 14.10.2010
Сообщений: 376

Deff,
спасибо. Попробую позже.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не получается прикрутить wysiwig Bloiv AJAX и COMET 1 22.06.2012 20:52
dataTables + jeditable не получается сделать поля редактируемыми alekslkta Элементы интерфейса 0 02.05.2011 16:17
dataTables + jeditable не получается сделать поля редактируемыми alekslkta jQuery 0 01.05.2011 23:53
Не получается передать href в код страницы Alex78 Events/DOM/Window 1 30.10.2009 17:58
Почему не получается jQuery("td").draggable()? khusamov Общие вопросы Javascript 1 17.07.2009 17:07