我有一个youtube视频可以使用对象嵌入呈现,在除ipad之外的所有浏览器中,这是代码:
<object id="ytViewer" width="468" height="327" type="application/x-shockwave-flash" data="http://www.youtube.com/apiplayer?version=3&enablejsapi=1&version=3&playerapiid=ytViewer" state="0" mute="0">
<param name="allowScriptAccess" value="always">
<param name="autoplay" value="0">
<param name="WMode" value="Opaque">
</object>
我正在使用对象嵌入,因为我在javascript中制作了一些自定义播放器控件,当我使用iframe嵌入视频时这些控件无效。
它使用了一些javascript来提取视频,但是因为ipad不支持flash嵌入?
更新
function loadPlayer( divToLoad, plId, vidid) {
var params = {
allowScriptAccess: "always",
autoplay: 0
};
var atts = {
id: plId
};
// All of the magic handled by SWFObject (http://code.google.com/p/swfobject/)
swfobject.embedSWF("http://www.youtube.com/apiplayer?" + "&enablejsapi=1&version=3&playerapiid=" + plId, divToLoad, "468", "327", "9", null, null, params, atts);
swfobject.createCSS("#" + plId, "display:block");
$('#' + plId + '_container').attr('videoid', vidid);
}
所以我需要上面的函数来添加embed标签,不知道怎么做。
由于
答案 0 :(得分:1)
您的代码仅链接到YT flash视频播放器(甚至没有指向视频)。
为什么不直接使用YouTube自动生成的“分享”代码? 请注意视频右下方“共享”部分中的“嵌入”按钮,然后复制默认代码。您甚至可以激活一些其他选项:
<iframe width="560" height="315" src="http://www.youtube.com/embed/KVHO-FWuMXs" frameborder="0" allowfullscreen></iframe>
这适用于所有浏览器。
修改强> 如果你需要object / param语法,你可以切换到嵌入视频的“旧”方式:可以勾选(当前第四个)选项以使用这个不推荐使用的代码:
<object width="560" height="315"><param name="movie" value="http://www.youtube.com/v/KVHO-FWuMXs?version=3&hl=de_DE"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/KVHO-FWuMXs?version=3&hl=de_DE" type="application/x-shockwave-flash" width="560" height="315" allowscriptaccess="always" allowfullscreen="true"></embed></object>
使用来自Psy的音乐视频进行测试: http://www.youtube.com/watch?v=KVHO-FWuMXs