1
我使用幾個HTMLLoader
嵌入在AIR應用程序的YouTube視頻(每加載一個),當我添加兩個以上,這會導致錯誤的API中的所有玩家過去第二。玩家似乎工作正常,但事件從未被調用,並且player.pauseVideo未定義。嵌入多個視頻會導致錯誤的YouTube API
TypeError: Result of expression 'b' [undefined] is not an object.
at http://s.ytimg.com/yts/jsbin/www-embed-player-vflJ4hakx.js : 206
at http://s.ytimg.com/yts/jsbin/www-embed-player-vflJ4hakx.js : 205
at http://s.ytimg.com/yts/jsbin/www-embed-player-vflJ4hakx.js : 204
at http://s.ytimg.com/yts/jsbin/www-embed-player-vflJ4hakx.js : 199
我的嵌入代碼:
function SetupYoutubePlayer(divName, videoID) {
_videoID = videoID;
_divName = divName;
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
}
var _videoID;
var _divName;
var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player(_divName, {
height: '100%',
width: '100%',
wmode: 'opaque',
autohide: '1',
modestbranding: '1',
frameborder: "0",
showinfo: '0',
videoId: _videoID,
playerVars: {
'wmode': 'opaque',
'rel': 0,
'autohide': 1,
'modestbranding': 1,
'frameborder': 0,
'showinfo': 0,
},
events: {
'onStateChange': onPlayerStateChange
}
});
}
對於每個「HTMLLoader」只對這些行調用一次,並且每個加載程序都有一個視頻 –
如果對於更熟悉Adobe Air的人來說這很明顯,但是每個HTMLLoader是否都有完全獨立的JavaScript環境? –
是的,我認爲他們的行爲類似於瀏覽器 –