我放弃使用youtube iframes api。我在asp.net页面上使用它,我使用youtube的方法以编程方式创建iframe,我发现在Internet Explorer中,这些iframe是不可靠的。在chrome中,它们工作得很好。所以我需要一个IE的替代品。我发现以下代码为一个非iframe youtube api:
var params = { allowScriptAccess: "always" };
var atts = { id: "player" };
swfobject.embedSWF('http://www.youtube.com/v/<%=session("uTubeCode") %>?enablejsapi=1&playerapiid=ytplayer&version=3',
"player", '<%=Session("PlayerWidth")%>', '<%=Session("PlayerHeight")%>', "8", null, null, params, atts);
我的问题有两个方面。首先,上面的swfobject必须在某个地方声明并初始化。我怎么做呢?其次,在我的iframe代码中,我有如下属性:
{ 'controls': 1, 'fs': 1, 'autoplay': 1, 'autohide': 0, 'modestbranding': 1, 'rel': 0, 'showinfo': 0}
如何将它们的等效物放入swfobject中?谢谢。
要回答问题1,如果在调用embedSWF方法之前只是引用SWFObject javascript库,那么代码应该是:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js"></script>
<script type="text/javascript">
var attributes = ... etc.
要回答问题2,这些属性中的大多数将作为参数传递给embedSWF作为参数接收的URL;以您的代码为例:
swfobject.embedSWF('http://www.youtube.com/v/<%=session("uTubeCode") %>?enablejsapi=1&playerapiid=ytplayer&version=3&fs=1&autplay=1&modestbranding=1',
"player", '<%=Session("PlayerWidth")%>', '<%=Session("PlayerHeight")%>', "8", null, null, params, atts);
以下是完整的列表:
https://developers.google.com/youtube/player_parameters