All pastes #183996 Raw Edit

Mine

public text v1 · immutable
#183996 ·published 2006-09-27 13:20 UTC
rendered paste body
/*en el html :
<HTML>
<HEAD>
<meta http-equiv=Content-Type content="text/html;  charset=ISO-8859-1">
<TITLE>test</TITLE>
</HEAD>
<SCRIPT LANGUAGE=JavaScript>
<!--

var IE = navigator.appName.indexOf("Microsoft") != -1;

function Alert(arg){
	alert(arg);
	SendMessage(arg);
}

function Load(args){
	SendMessage(args);
}

function SendMessage(args){
    var swf  = IE ? ObjectFlash : document.ObjectFlash;
    swf.SetVariable("____result", args);
}

//-->
</SCRIPT> 


<BODY bgcolor="#FFFFFF">
<center><p><b><font face="Geneva, Arial, Helvetica">Example of JavaScript-to-Flash communication</font></b> 
</p>
<p>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" 
width="550" height="400" id="ObjectFlash" >
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="test.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />


<embed src="test.swf" quality="high" bgcolor="#ffffff" width="550" height="400" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash"pluginspage="http://www.macromedia.com/go/getflashplayer" name="ObjectFlash" swLiveConnect="true" >

</object></p>
</center>
</BODY>
</HTML>

en el fla :

import com.buho.util.JSconnector;

JSconnector.addListener(this,recibe);

bt.onPress =function(){
    JSconnector.send("Alert","prueba lalala ");
}

sdBt.onPress=function(){
    JSconnector.send("Load","prueba||el array recibira otro elemento");
}

function recibe(arg){
    texto.text+=arg+"\n";
}

*/

class com.buho.util.JSconnector{
	
	private static var _listObj = new Array();
	private static var  _listFunc = new Array();
	
	
    static function send(funcJs, arg){
        var str = "(\'" + arg + "\')";
        _root.getURL("javascript:" + funcJs + str);
    } 
    
	
	static function addListener(obj, func){
        if (isInit())init();
		_listObj.push(obj);
		_listFunc.push(func);
    } 
    
	
	static function removeListener(obj, func){
        for (var i =0 ;i< _listObj.length;i++){
            if (_listObj[i] == obj && _listFunc[i] == func){
                _listObj.splice(i, 1);
                _listFunc.splice(i, 1);
            }
        }
    } 
    // private 
	static function avisa(str){
        var arr = str.split("||");
		
        for(var i=0 ;i < _listObj.length;i++){
            _listFunc[i].apply(_listObj[i], [arr]);
        }
    } 
    
	static function setJS(mensaje){
		avisa(mensaje);
	} 
   
   
	static function getJS(){
        return null;
    } 
	
    private static function init(){
		_root.addProperty("____result", com.buho.util.JSconnector.getJS, com.buho.util.JSconnector.setJS);
    } 
   
	private static function isInit(){
		return(_root.____result == null);
    } 
}