浏览器 嵌入 SWF 文件兼容性

1、

  判断各种浏览器

  JS 获取swf对象的写法:

 

   thisMapMovie("donghua").startPlay();

                //Flash 注册完回调函数之后后调用
	        function isReady() {	         
				isReady = 1;	
				alert("  抽奖Flash 动画准备完毕");			
		}			 
		//按钮响应 开始播放调用Flash函数
	        function startPlay(){
	            if(isReady == 1){
	               alert(" startPlay ");
 
	               thisMapMovie("donghua").startPlay();	              
	              
	            }else{
	                  alert(" Flash 还未准备完。");
	            }		                   
	        }

  

 

            



function thisMapMovie(movieName) { if (window.document[movieName]) { return window.document[movieName]; } if (navigator.appName.indexOf("Microsoft Internet") == -1) { if (document.embeds && document.embeds[movieName]){ return document.embeds[movieName]; } else // if (navigator.appName.indexOf("Microsoft Internet")!=-1) { //return document.getElementByIdx_x_x(movieName); return document.getElementById(movieName); } } }

 

 

2、加载swf文件的写法 

   Google Chrome浏览器的写法注意要加上

<embed

   要加上参数  play="false" allowScriptAccess="always" ;否则会自动播放 并且不响应swf文件里面的as代码的操作。

加载swf 文件的写法    
<
object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="550" height="400" id="donghua" align="middle"> <param name="movie" value="donghua.swf" /> <param name="quality" value="high" /> <param name="bgcolor" value="#ffffff" /> <param name="play" value="true" /> <param name="loop" value="true" /> <param name="wmode" value="window" /> <param name="scale" value="showall" /> <param name="menu" value="true" /> <param name="devicefont" value="false"/> <param name="salign" value="" /> <param name="allowScriptAccess" value="always" /> <param name="swliveconnect" value="true"/> <embed play="false" allowScriptAccess="always" swliveconnect="true" name="donghua" src="donghua.swf" quality="high" bgcolor="#FFFFFF" width="550" height="400" type="application/x-shockwave-flash" swliveconnect="true" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"/> </object>

 

 

3、 AS的代码

 

public function docMain() {
			
	Security.allowDomain("*");
	Security.allowInsecureDomain("*");	
			
	init();		
}
private function init():void{
	//注册as函数,外部js调取			
	if (ExternalInterface.available)
	{
	    ExternalInterface.addCallback("startPlay", startFlash);
	    ExternalInterface.call("isReady");
	}		
	this.stop();			
}

  

 

posted @ 2015-01-22 15:18  regalys168  阅读(932)  评论(0编辑  收藏  举报