Как получить длительность тега объекта в jQuery и воспроизводить видео в определенное время? - PullRequest
2 голосов
/ 24 октября 2011
<div id="sound" >
  <OBJECT  classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" WIDTH="0" HEIGHT="0" id="Yourfilename" ALIGN="">
    <PARAM NAME=movie VALUE="sample.swf"> 
    <PARAM NAME=quality VALUE=high>
    <PARAM NAME=bgcolor VALUE=#333399> 
    <EMBED src="sample.swf" quality=high bgcolor=#333399 WIDTH="0" HEIGHT="0" NAME="Yourfilename" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer">

    </EMBED> 

  </OBJECT> 
</div>

Я хочу получить длительность этого звука и преобразовать его в секунды, а затем воспроизвести этот звук с определенного времени.

Например, воспроизведение этого звука от 40 секунд.

Как я могу это сделать?

Ответы [ 2 ]

1 голос
/ 25 октября 2011
$(document).ready(function(){
  var audio = $('audio');
  $(audio).bind('timeupdate', function() {
    parseInt(audio.duration - audio.currentTime, 20).toString();
    position = (audio.currentTime / audio.duration) * 100;
  });
audio.play();
});

Я пытаюсь решить эту проблему, но до сих пор не могу.Когда я использовал

alert(parseInt(audio.duration - audio.currentTime, 20).toString()) 

, он возвращает NAN.

1 голос
/ 24 октября 2011

Как вам сказали ранее, не используйте устаревшие теги, и попробуйте использовать для этого свежий тег <audio> из HTML5.

Вам нужно будет позвонить audio.duration.Проверьте этот уже ответил на вопрос с этого же сайта.Попробуйте что-то вроде этого:

$(audio).bind('timeupdate', function() {
...
parseInt(audio.duration - audio.currentTime, 10),
...
position = (audio.currentTime / audio.duration) * 100,

Удачи.

Отредактировано: если вы хотите начать через 20 секунд, вы должны позвонить на audioElement.currentTime=20;, а затем на audioElement.play(); на вашем js $(document).ready(function()).Спросите, нужно ли вам что-нибудь еще.

...