用swfobject实现FlashPlayer8的快速安装(Express Install)
我曾经介绍过使用swfobject在页面中加入Flash影片的方法,也制作了一个基于swfobject的发布模版。实际上,除了swfobject,Adobe也有对应的解决方案,但是由于我感觉没有swfobject好用,就没有介绍,也从未使用过。
现在,Adobe发布了Flash Player Detection Kit 1.5,使用它的方式在页面中嵌入Flash影片,并支持Flash Player 8快速安装(ExpessInstall),我详细研究了Adobe的源码,发现使用起来非常麻烦。那么,swfobject能实现快速安装么?当然可以!而且非常的简单!看看下面的JavaScript代码:
1<script src="/swfobject.js" type="text/javascript"></script>
2<p id="flashcontent"> 您的浏览器不支持JavaScript,或者您禁用了JavaScript。
3请启用浏览器的JavaScript支持。
4如果您确认启用了JavaScript,请使用下面的链接升级Flash Player到最新版本
5<a href="http://www.adobe.com/go/getflash/">安装最新的Flash Player插件</a>
6<script type="text/javascript"> var so = new SWFObject("/flashmovie.swf", "mymovie", "200", "100", "8", "#336699", "true"); so.write("flashcontent"); </script>
和swfobject的使用一文中,最大的改变就是在声明so时,在最后面添加了一个参数true。这个参数告诉swfobject:我们要使用快速安装功能。当然,我们要把需要的Flash Player版本设置成8。
如果希望在升级成功之后跳转到一个特定的页面,可以使用下面的代码(加在so的定义下方):
1so.setAttribute('xiRedirectUrl', 'http://www.zengrong.net'); //必须使用绝对URL,即以http://开头
如果不指定xiRedirectUrl,在升级完毕后,会重新跳转到当前页面。
同时,下载这个as文件,将它放在fla文件相同的目录:
在fla的 _root
第一帧写上下面的代码:
1#include "expressinstall.as"
2var install = new ExpressInstall();
3if (install.needsUpdate) {
4stop();
5install.init();
6}
就这样,简单把?
- 文章ID:208
- 原文作者:zrong
- 原文链接:https://blog.zengrong.net/post/swfobject-express-install/
- 版权声明:本作品采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可,非商业转载请注明出处(原文作者,原文链接),商业转载请联系作者获得授权。