当承载Flash的站点被阻止时,如何显示静态图像

当承载Flash的站点被阻止时,如何显示静态图像,flash,Flash,我正在尝试在网页中加载youtube视频。不太难,而且效果很好 <object width="600" height="362"> <param name="movie" value="http://www.youtube.com/v/etc"></param> <param name="allowFullScreen" value="true"></param> <embed src="http://www.youtube

我正在尝试在网页中加载youtube视频。不太难,而且效果很好

<object width="600" height="362"> 
<param name="movie" value="http://www.youtube.com/v/etc"></param> 
<param name="allowFullScreen" value="true"></param> 
<embed src="http://www.youtube.com/v/etc" type="application/x-shockwave-flash"
width="600" height="362" 
allowfullscreen="true">
</embed> 
</object> 

如果Flash不存在或禁用,它就没有问题了。它只是显示了嵌入的中间部分。

但是如果youtube被屏蔽(在防火墙上,或者/etc/hosts指向错误的IP),我什么也得不到

有人知道在这种情况下展示东西的方法吗?例如图像(或任何html)

[编辑]我想我应该补充一点:我没有访问Flash的权限,因此我无法制作新的SWF并嵌入它(对不起,乔治,这个想法看起来不错,但我没有工具)

我需要的东西,我可以做的HTML和Javascript,在客户端。助教


谢谢

您是否可以尝试加载视频并收听HTTPStatus事件、安全错误或任何可能让您知道视频无法工作的内容,如果是,请显示其他内容

var ytLoader:Loader = new Loader();
ytLoader.contentLoaderInfo.addEventListener(HTTPStatusEvent.HTTP_STATUS, ytHTTPStatus);
ytLoader.load(new URLRequest('http://www.youtube.com/v/kDKiQfBs9lo'));

function ytHTTPStatus(event:HTTPStatusEvent):void {
    if(event.status != 200) trace('display alternate content');
}
如果您只能通过Javascript访问内容,我建议您看看

我猜想,如果显示视频有任何问题,如果您尝试访问视频中的任何数据,应该可以看到这些问题,如:

  • (持续时间, 视频url,视频嵌入代码)
  • 在整个过程中没有太大的变化

最后,没有那么多。我没有访问任何ActionScript的权限-只有javascript/html。swfobject有一个回调,但它说ok,即使我将youtube.com指向127.0.0.1…..您可以通过JS API访问任何数据吗?上面提供的链接