Flash精彩使用技巧两则
文章一:加载变量出错
问题:
当从远端服务器的一个文件加载变量时发生错误,无数据返回。
原因:
加载变量(Load Variables)的指令无法接入原Flash电影所存贮的服务器之外的外部数据资源。例如,如果Flash电影播放的网站域名为http://www.myserver.com,在你执行加载变量的指令时,它就会去直接寻找http://www.myserver.com/variablecontainer.txt这个文件,如果在此目录下存在这个文本文件,指令就可正常执行。但如果你所执行的加载变量指令是查找http://www.yourserver.com/variablecontainer.txt,那么就会出现错误,而且也不会返回任何信息,甚至报错信息。这主要是出于安全方面的考虑,Flash软件的播放器不允许接入外部数据资源。 解决方案: 最简单的解决方案是把你需要调用的数据资源从某外部服务器中调入Flash电影当前所在的服务器内。例如在上例中,你需要将http://www.yourserver.com中的数据转移至http://www.myserver.com下。
当然你也可以调用外部数据资源,并有以下两种方法:
*代理脚本编辑 你可以编写一个CGI脚本,从而允许你直接接入不同域名下的外部服务器。此时Flash电影将调用该CGI脚本来执行加载变量的指令。此CGI脚本可被置于Flash电影存放的同一域名下,当其被Flash电影调入时,将做为外部数据资源的代理。它能够接入外部域名数据资源服务器,获取变量信息,并将这些信息写入本地服务器内,以便让Flash播放器读取。 但这种方法的缺点是速度较慢,这是因为CGI脚本在接入外部服务器时会受到一定的影响,而且还可能会增大本地服务器的负载量。
*域名服务器别名 你还可以使用域名服务器(DNS)别名系统,当Flash电影向域名服务器别名系统发出请求指令时,域名服务器会截取URL链接,对请求进行分析,并把结果发送至外部服务器。 需要注意的一点是你应该对域名服务器系统进行设置,不允许其接受来自外部域名的请求。另外有时一些外部服务器可能会返回错误信息,而不是你所需要的变量。再有向你所在域名之外的服务器中添加DNS接入设置有时也会发生问题。 如果你想采取这套解决方案,请一定与系统管理员进行紧密的合作,以便对外部域名服务器进行有效的管理,以免某些问题的发生。
文章二:添加透明背景
通过对某些浏览器系统的设置,可以将Flash电影的背景设置为透明,这就可以允许包含Flash电影的HTML网页的一些背景颜色或图片能够透过Flash电影显示出来。但请注意本功能仅被Internet Explorer 4或更高版本的浏览器所支持,而对于使用Netscape Navigator Windows版的用户以及所有使用Macintosh版本各类浏览器的用户来说,他们无法获得透明背景Flash电影。另外透明背景特效也不被Flash独立播放器支持。
将Flash电影透明化的设置过程如下:
如果你创建一个新的HTML网页,用户可以通过"Publish Settings"(出版设置)来实现该功能,"Publish Settings"的对话框提供了可以修改WMODE设置的选项,当你选中该选项后,可以自动向HTML源代码内添加信息。
1. 选择"File"(文件)>"Publish Settings"(出版设置),然后选择HTML标签。
2. 在WMODE设置中选择"Transparent"(透明化)这样就可以使Flash电影的背景在IE4以及更高版本的Windows版浏览器中消失。 如果你需要修改一个现有的HTML网页来实现透明化,请向HTML源代码中的OBJECT置标符内添加下列参数:
<param name="wmode" value="transparent">
例如,如果你希望实现透明化,具体表现如下:
本例会让黑色背景的Flash电影变得透明化,当然前提是用户使用Internet Explorer 4或更高Windows版本的浏览器。而如果你在其它浏览器下或其它系统平台下察看,黑色背景仍旧会显示。在本例中,如果你使用Windows版本Internet Explorer 4浏览器(安装了Flash 4 ActiveX控件)来查看,应该能够看到网页的白色背景能够透过Flash显示出来。
如果你希望关闭透明化,具体表现如下:
在本例中源代码内不含有WMODE置标符,因此永远会显示Flash电影的黑色背景。
留言区(共0条)