表 1. HTML5 视频 API
特性(attributes) 和属性(properties) 的区别是,您不可以在标记中使用属性,而可以在标记和脚本中使用特性。<video> 元素的 src 特性会覆盖源元素的 src 特性。如果您在标记中使用源元素,src 将是一个空字符串,唯一立即可用的是 width 和 height,用于设置容器的大小。其他所有的事件在视频的元数据加载之后方可使用。
API bug
浏览器没有致命的 bug,但是 Apple iPad 有一些 bug 会影响当前 API:
?动态视频 bug。如果您使用 innerHTML 创建 <video> 元素,源元素不能自动触发。解决方法是设置 src 特性并调用 load 方法。见 清单 5 示例。
?源次序 bug。如果第一个元素是一个非 MP4 视频的,iPad 将停下来不加载。解决方法是总是将 MP4 源元素列在最前面。
?粘贴 bug。iPad 不能显示粘贴图像,这个 bug 不久将被修复,但是目前,解决方法是创建一个 HTML IMG 元素,置于适当位置。
清单 5. 修复 iPad 动态加载 bug