我有一个从数据库中获取Youtube网址的程序,而我在使用Youtube javascript API时遇到了问题。
在我的代码隐藏中,我正在调用以下代码:
Table1.Rows(0).Cells(0).Text = "<object style=""height: 390px; width: 640px"" id=""ytplayer"">" & _
"<param name=""movie"" value=""https://www.youtube.com/v/UASyS-jUKKI?version=3&feature=player_embedded&controls=0&enablejsapi=1&showinfo=0&iv_load_policy=3&playerapiid=ytplayer"">" & _
"<param name=""allowfullscreen"" value=""true"">" & _
"<param name=""allowscriptaccess"" value=""always"">" & _
"<embed src=""https://www.youtube.com/v/UASyS-jUKKI?version=3&feature=player_embedded&controls=0&enablejsapi=1&showinfo=0&iv_load_policy=3&playerapiid=ytplayer"" type=""application/x-shockwave-flash"" allowfullscreen=""true"" allowscriptaccess=""always"" width=""425"" height=""344"" id=""ytplayer""></object>"
(我将在我的数据库中引用记录的来源)。
这会将它嵌入到页面上,然后播放,但我想使用API函数,这对我来说不起作用。
var vid;
function onYouTubePlayerReady(id) {
vid = id;
var video = document.GetElementById(vid);
video.playVideo()
}
function play() {
var vobj;
if (vid) {
vobj = document.getElementById(vid);
alert(vobj);
vobj.playVideo();
}
}
<a href="javascript:void(0);" onclick="play();">Play</a>
我知道它已成功调用'onYouTubePlayerReady'功能(并返回ID),但播放/暂停/停止等功能无效。有谁知道如何解决这个问题?
它在服务器上运行,而不是在本地运行。
谢谢
答案 0 :(得分:0)
您的object
和embed
标记都具有相同的ID="ytplayer"
,这在DOM中是不允许的。尝试更改其中一个。