html5返回当前音频/视频的长度以秒计的属性duration


本文摘自PHP中文网,作者黄舟,侵删。

实例

获得当前视频的长度:

1

2

myVid=document.getElementById("video1");

alert(myVid.duration);

定义和用法

duration 属性返回当前音频/视频的长度,以秒计。

如果未设置音频/视频,则返回 NaN (Not-a-Number)。

浏览器支持

所有主流浏览器都支持 duration 属性。

注释:Internet Explorer 8 或更早的浏览器不支持该属性。

语法

1

audio|video.duration

技术细节

返回值数字值,表示音频/视频的长度,以秒计。

根据JavaScript高级程序设计中P489页的程序,我写了以下程序

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

<!DOCTYPE html>

<html>

<head>

<title></title>

<meta charset="utf-8">

</head>

<body>

<p class="mediaplayer">

<p class="video">

<video  id="player" poster="E:\1.jpg" width="300" height="200"  src="太阳E15.mp4">

Video player is not available.

</video>

</p>

<p class="controls">

<input type="button" value="Play" id="video-btn">

<span id="curtime">0</span>/<span id="duration">0</span>

</p>

</p>

<script type="text/javascript">

window.onload=function(){

var oPlayer=document.getElementById('player');

var oBtn=document.getElementById("video-btn");

var oCurtime=document.getElementById('curtime');

var oDuration=document.getElementById('duration');

oDuration.innerHTML=oPlayer.duration;

oBtn.onclick=function(){

if(oPlayer.paused){

oPlayer.play();

oBtn.value="Pause";

}else{

oPlayer.pause();

oBtn.value="Play";

}

};

setInterval(function(){

oCurtime.innerHTML=oPlayer.currentTime;

},250);

};

</script>

</body>

</html>

由于IE8及其之前的版本不支持video标签,所以不显示。

但是在IE9,10,11支持的情况下,为什么会显示

并且,使用alert(oPlayer.duration);页面是能够弹出该视频的时间的。

但是为什么oDuration.innerHTML=oPlayer.duration;这句话会显示NaN?

对此,我又尝试了一下代码

1

2

3

var duration1=oPlayer.duration;

alert(duration1);//NaN

alert(oPlayer.duration);//3625.982

由上面的结果,可以看出将oPlayer.duration的值赋给一个变量后这个变量的值是NaN。但是为什么?根据定义oPlayer.duration属性返回的是一个数值,为什么数值赋给一个变量会变成NaN?现在还不懂。

以上就是html5返回当前音频/视频的长度以秒计的属性duration的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

html5返回当前音频/视频的长度以秒计的属性duration

更多相关阅读请进入《html5、duration、长度》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...

    暂无评论...