在 HTML5 视频标签中使用 QuickTime/JavaScript API
Posted
技术标签:
【中文标题】在 HTML5 视频标签中使用 QuickTime/JavaScript API【英文标题】:using QuickTime/JavaScript API in a HTML5 video tag 【发布时间】:2011-10-06 12:42:51 【问题描述】:我正在使用新的视频标签构建一个 html5 网络应用程序。我使用了大部分新功能,但其中一些还没有实现,我可以使用旧的 QT/JS API。
Apple 为此提供了文档: http://developer.apple.com/library/safari/#documentation/QuickTime/Conceptual/QTScripting_javascript/bQTScripting_JavaScri_Document/QuickTimeandJavaScri.html#//apple_ref/doc/uid/TP40001526-CH001-SW5
但这只是 vor 对象或嵌入标签。你知道有没有办法使用视频标签来做到这一点?
(我请求的全部目的是在 ios 上捕捉用户可以实际按下视频播放的事件)
【问题讨论】:
【参考方案1】:如果我正确理解您希望在用户开始播放 HTML5 视频时捕捉事件,您可以使用以下事件:
videoElements = document.getElementsByTagName("video");
for (var i = 0; i < videoElements.length; i++)
ele = videoElements[i];
ele.addEventListener("play", onVideoPlay);
ele.addEventListener("pause", onVideoPause);
ele.addEventListener("ended", onVideoEnded);
或者是你想要达到的其他目标?
【讨论】:
不是真的! HTML5 将允许我这样做。不,我希望在播放按钮可用时(而不是实际按下时)之前的事件。我认为它是 QT 中的 qt_loadedmetadata。但是 HTML5 onloadedmetadata 事件最终会在播放点击后触发... 啊,好吧。你见过这个问题:***.com/questions/5181865/… 吗?也许这有帮助。 是的,但这些都是关于规格和东西的非常理论的讨论。实际发生的是,当视频的第一帧出现时,readyState 变为 4,这显然是在缓冲开始等之后(至少在 Safari 5 上)以上是关于在 HTML5 视频标签中使用 QuickTime/JavaScript API的主要内容,如果未能解决你的问题,请参考以下文章