我期待將帶有YouTube控件的YouTube視頻嵌入到我的Flash網站中。這可能嗎?我可以在我的Flash網站中嵌入YouTube播放器(帶有控件)嗎?
修訂W /解決方案:
var loader:Loader = new Loader();
loader.load(new URLRequest("http://www.youtube.com/v/zIcx_rxTstc"));
addChild(loader);
我期待將帶有YouTube控件的YouTube視頻嵌入到我的Flash網站中。這可能嗎?我可以在我的Flash網站中嵌入YouTube播放器(帶有控件)嗎?
修訂W /解決方案:
var loader:Loader = new Loader();
loader.load(new URLRequest("http://www.youtube.com/v/zIcx_rxTstc"));
addChild(loader);
它看起來像這篇文章將爲您提供您所需要的解決方案:
我會接受這一點,因爲它使我得到了正確的答案,即使它是過時的(AS2在2002年) – 2010-09-03 18:50:06
這是一個基本的I類爲製造。 當然,您將不得不創建按鈕。 並啓用/禁用其某些功能。 希望能幫到 shani
package { import flash.system.Security; import flash.display.MovieClip; import flash.display.Loader; import flash.events。*; import flash.net.URLRequest;
public class YouTubeAS3 extends MovieClip {
private var player:Object;
private var playBtn:PlayBtn;
private var pauseBtn:PauseBtn;
private var stopBtn:StopBtn;
public function YouTubeAS3 (vidId:String) {
Security.allowDomain("http://www.youtube.com") ;
var loader1:Loader = new Loader();
loader1.contentLoaderInfo.addEventListener (Event.INIT, onLoaderInit);
loader1.load (new URLRequest("http://www.youtube.com/apiplayer?version=3"));
function onLoaderInit (event:Event):void {
addChild (loader1);
loader1.content.addEventListener ("onReady", onPlayerReady);
loader1.content.addEventListener ("onError", onPlayerError);
loader1.content.addEventListener ("onStateChange", onPlayerStateChange);
loader1.content.addEventListener ("onPlaybackQualityChange", onVideoPlaybackQualityChange);
playBtn= new PlayBtn();
pauseBtn= new PauseBtn();
stopBtn= new StopBtn();
playBtn.x = pauseBtn.x = stopBtn.x = 430;
playBtn.y = 20;
pauseBtn.y = 50;
stopBtn.y = 80;
playBtn.addEventListener (MouseEvent.CLICK,playP);
pauseBtn.addEventListener (MouseEvent.CLICK,pauseP);
stopBtn.addEventListener (MouseEvent.CLICK,stopP);
player.addEventListener (MouseEvent.CLICK,setPsize);
addChild (playBtn);
addChild (pauseBtn);
addChild (stopBtn);
}
function onPlayerReady (event:Event):void {
// Event.data contains the event parameter, which is the Player API ID
trace ("player ready:", Object(event).data);
// to load a particular YouTube video.
player = loader1.content;
player.loadVideoById (vidId);
player.setSize (448, 252);
}
function onPlayerError (event:Event):void {
// Event.data contains the event parameter, which is the error code
trace ("player error:", Object(event).data);
}
function onPlayerStateChange (event:Event):void {
// Event.data contains the event parameter, which is the new player state
trace ("player state:", Object(event).data);
if(Object(event).data==1){
//if(loading!=null){
//removeChild(loading);
//loading=null;
//}
}
}
function onVideoPlaybackQualityChange (event:Event):void {
// Event.data contains the event parameter, which is the new video quality
trace ("video quality:", Object(event).data);
}
}
public function setPsize (evt:MouseEvent):void {
player.setSize (640, 360);
}
public function playP (evt:MouseEvent):void {
if (player) {
player.playVideo();
}
}
public function pauseP (evt:MouseEvent):void {
if (player) {
player.pauseVideo();
}
}
public function stopP (evt:MouseEvent):void {
if (player) {
player.stopVideo();
}
}
public function muteP (evt:MouseEvent):void {
if (player) {
player.mute();
}
}
public function unMuteP (evt:MouseEvent):void {
if (player) {
player.unMute();
}
}
//player.isMuted():Boolean
//player.setVolume(volume:Number):Void
}
}
+1 「http://www.youtube.com/apiplayer?version = 3」的引用,它允許我在谷歌上找到這個來獲得**其他**解決方案! :) – cregox 2011-06-18 22:07:00
我的簡化工作溶液(複製粘貼&寶貝!):
package {
import flash.display.MovieClip;
import flash.system.Security
import flash.events.*;
import flash.display.Loader;
import flash.net.URLRequest;
public class youtubeSandbox extends MovieClip {
// remember, this is just an example - remove the following line for production!
Security.allowInsecureDomain("*");
var my_player:Object;
var my_loader:Loader = new Loader();
public function youtubeSandbox() {
my_loader.load(new URLRequest("http://www.youtube.com/v/5P6UU6m3cqk?version=3"));
// use either /v or /apiplayer
//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(640,480);
}
}
}
參考文獻:
,我們可以自定義播放器,[象](http://www.republicofcode.com/tutorials/flash/as3youtube/ )API? – cregox 2011-06-18 22:18:36
是的,顯然我們可以! :) http://code.google.com/apis/youtube/youtube_player_demo.html – cregox 2011-06-18 22:37:34