javascript播放youtube视频无效

时间:2012-03-30 19:55:55

标签: javascript html video youtube

的HTML

<html>
<head>
<style type="text/css">    body {    background-color: transparent;    color: white;    }    
</style>    
</head>
<body style="margin:0">    
<embed id="yt" src="http://www.youtube.com/v/6eK-W32IME0?fs=1&hl=en_US&enablejsapi=1" type="application/x-shockwave-flash" width="330" height="200"></embed>
</body>
</html>

我正在尝试播放视频的代码是

var yt = document.getElementById("yt");
yt.playVideo();

我得到的JS错误是

TypeError: Object #<HTMLEmbedElement> has no method 'playVideo'

但似乎这是其他人的表现。这是什么交易?

**编辑**

jsfiddle

**编辑**

The current JSFiddle现在可以在个人电脑上使用,但不适用于iPad。

2 个答案:

答案 0 :(得分:4)

我认为您需要将&enablejsapi=1添加到引用<embed>对象中视频的网址的查询字符串中。

另外,请尝试使用<embed>元素替换<object>元素。这是一个working example

关于iOS / Mobile Webkit的说明:

显然,根据this answer,Apple明确禁止在Safari或其他Mobile Webkit浏览器中自动控制嵌入式媒体,要求iOS用户直接与视频对象进行交互以启动播放。这适用于objectembed元素,以及HTML5 videoaudio元素。

答案 1 :(得分:1)

你没有加载JS api试试这个:

<embed id="yt" src="http://www.youtube.com/v/6eK-W32IME0?fs=1&hl=en_US&enablejsapi=1" type="application/x-shockwave-flash" width="330" height="200"></embed>   

了解有关youtubes JS api的更多信息,请查看https://developers.google.com/youtube/js_api_reference