我正在使用YouTubes Javascript API。我在我的本地环境中设置了一个测试页面,但是播放功能不起作用。视频加载,我可以在yt视频屏幕上按播放,但我的链接“播放”无效。谁能告诉我我做错了什么?
我一直在关注此事:http://code.google.com/apis/youtube/js_api_reference.html
<html>
<head>
<script type="text/javascript" src="public/javascripts/swfobject.js"></script>
</head>
<body>
<div id="ytapiplayer">
You will need Flash 8 or better to view this content.
</div>
<script type="text/javascript">
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer" };
swfobject.embedSWF("http://www.youtube.com/v/OQSNhk5ICTI&enablejsapi=1&playerapiid=ytplayer", "ytapiplayer", "425", "365", "8", null, null, params, atts);
function onYouTubePlayerReady(playerId) {
ytplayer = document.getElementById("myytplayer");
}
function play() {
if (ytplayer) {
ytplayer.playVideo();
}
}
</script>
<a href="javascript:void(0);" onclick="play();">Play</a>
</body>
</html>
答案 0 :(得分:4)
这对本地环境无效。你可以下载例如web developer express包含一个小型Web服务器,您可以在localhost中运行它。
答案 1 :(得分:0)
您的div id是ytapiplayer
而不是 myytplayer
因此,将onYouTubePlayerReady上的函数更改为
function onYouTubePlayerReady(playerId) {
//ytplayer = document.getElementById("myytplayer");
ytplayer = document.getElementById("ytapiplayer");
}
View the fiddle
看到代码正常工作