我正在制作一个播放来自youtube.com的视频并将其显示在我的Flash播放组件中的播放器。该脚本可以很好地加载视频,但是当我希望Flash从外部XML数据源加载相同的视频ID时,它会加载youtube播放器API而不是视频。这是代码
Security.allowDomain("www.youtube.com");
Security.allowDomain("*");
var my_player:Object;
var my_loader:Loader = new Loader();
my_loader.load(new URLRequest("http://www.youtube.com/apiplayer?version=3"));
my_loader.contentLoaderInfo.addEventListener(Event.INIT, onLoaderInit);
function onLoaderInit(e:Event):void {
addChild(my_loader);
my_player = my_loader.content;
my_player.addEventListener("onReady", onPlayerReady);
}
function onPlayerReady(e:Event):void {
my_player.setSize(582.2,373.1);
my_player.cueVideoById("53OyPYa7SEI",0);
my_player.playVideo();
}
此脚本使用我在
定义的特定ID从youtube.com加载视频my_player.cueVideoById("53OyPYa7SEI",0)
后来我定义了名为“videos.xml”的XML文件,我在其中传递了youtube链接并试图从flash中的xml文件中调用视频。但问题出在那里。这是xml代码
<?xml version="1.0" encoding="ISO-8859-1" ?>
<videos>
<VIDEO url="http://www.youtube.com/watch?v=53OyPYa7SEI" id=1/>
<VIDEO url="http://www.youtube.com/watch?v=53OyPYa7SEI" id=2/>
</videos>
有人可以帮助我从XML文件中调用视频吗?
答案 0 :(得分:0)
var XMLPath:String = "videos.xml";
var xmlSlideshow :XML;
var xmlLoader:URLLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, onXMLLoadComplete);
//xmlLoader.addEventListener(ProgressEvent.PROGRESS, xmlLoadingAction);
//xmlLoader.addEventListener(ErrorEvent.ERROR,ErrorAction);
xmlLoader.load(new URLRequest(XMLPath));
function onXMLLoadComplete(e:Event):void {
xmlSlideshow = new XML(e.target.data);
trace(xmlSlideshow.VIDEO.@url);
}
之后
my_loader.load(new URLRequest(xmlSlideshow.VIDEO.@url));
Here是一个很好的在线啧啧。试试吧。