1

我有一个从数据库中获取 Youtube URL 的程序,但我在使用 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),但播放/暂停/停止等不起作用。有人知道如何解决这个问题吗?

它在服务器上运行,而不是在本地运行。

谢谢

4

1 回答 1

0

yourobjectembedtags 都具有相同ID="ytplayer"的 DOM,这在 DOM 中是不允许的。尝试改变其中之一。

于 2012-04-08T04:07:13.283 回答