0

我的用于 html5 视频的皮肤和功能定制的 JQuery API 在所有浏览器中都可以正常工作。

但是当调用视频的缓冲值时,IE9 和 Opera 会抛出一条错误消息。编码是:

var buffertime = $hdVideo[0].buffered.end(0);

Opera 中的错误信息是:

未捕获的异常:[object DOMException] 在 localhost/hd-videos/version1.0.d/scripts/hd-video.js 的 () 中的第 208 行第 16 列引发错误:var buffertime = $hdVideo[0].buffered。结束(0);从 localhost/hd-videos/version1.0.d/scripts/jquery-1.4.2.min.js 中 (a) 中的第 55 行第 294 列调用:i=i.handler.apply(this,arguments); 通过 Function.prototype.apply() 从 localhost/hd-videos/version1.0.d/scripts/jquery-1.4.2.min.js 中 () 的第 49 行第 569 列调用:返回 typeof c!=="未定义"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w

在 IE9 中:

SCRIPT87:参数无效。hd-video.js,第 208 行字符 17

获得缓冲值的正确方法是什么?

4

1 回答 1

0

你必须检查两件事:

  1. 缓冲可用(旧版浏览器不支持缓冲属性)
  2. 缓冲属性的长度

    var buffertime = ($hdVideo[0].buffered && $hdVideo[0].buffered.length) ?$hdVideo[0].buffered.end(0) || 0;//加0或$hdVideo[0].duration

于 2012-10-14T18:56:17.993 回答