其实在试验中,发现IE浏览器是没有问题的,倒是Firefox和Chrome等不可以,发现隐藏swf对象后,再显示时,IE上不会出现重载swf的情况,但是Firefox和Chrome都有重载swf文件的情况,于是想办法让后者浏览器不要重载,于是找到把flex这个object的style中,将其visibility设置成"hidden",且长宽均为0的办法,实验证明果然可以了,解决了不同浏览器不兼容的情况。
代码如下,主要是JavaScript的处理,所以在此不给出Flex的源码。
另外,要注意以前由于Adobe的Flex-Ajax Bridge不考虑Chrome浏览器导致Flex与JavaScript不能交互的情况,要在FABridge.js文件中的FABridge__bridgeInitialized时加入如下判断:
if((!(/Chrome/.test(navigator.appVersion))) && ((/Explorer/.test(navigator.appName) || /Konqueror|Safari|KHTML/.test(navigator.appVersion))))
示例代码如下:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Test page for the TimeLine3 class</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type=