flashÓëjavascriptµÄ½»»¥
flashÓëjavascriptµÄ½»»¥¿ÉÄÜÌÖÂ۵ıȽ϶à,½ñÌìΪ´ó¼Ò½éÉÜÏÂÈçºÎʹÓÃflexÓëjavascript½øÐн»»¥
Ò»¡¢ÔÚJavaScriptÖе÷ÓÃFlex·½·¨
ÔÚFlexÖпÉÒÔÓÃExternalInterfaceÀ´µ÷ÓÃFlexµÄ·½·¨£¬Í¾¾¶ÊÇ
1.ͨ¹ýÔÚFlexÓ¦Óÿɵ÷Ó÷½·¨ÁбíÖÐÌí¼ÓÖ¸¶¨µÄ¹«Ó÷½·¨¡£ÔÚFlexÓ¦ÓÃÖÐͨ¹ýµ÷ÓÃaddCallback()¿ÉÒÔ°ÑÒ»¸ö·½·¨Ìí¼Óµ½´ËÁбíÖС£addCallback½«Ò»¸öActionScriptµÄ·½·¨×¢²áΪһ¸öJavaScriptºÍVBScript¿ÉÒÔµ÷Óõķ½·¨¡£
addCallback()º¯ÊýµÄ¶¨ÒåÈçÏ£º
addCallback(function_name:String, closure:Function):void
function_name²ÎÊý¾ÍÊÇÔÚHtmlÒ³ÃæÖнű¾µ÷Óõķ½·¨Ãû¡£closure²ÎÊýÊÇÒªµ÷Óõı¾µØ·½·¨£¬Õâ¸ö²ÎÊý¿ÉÒÔÊÇÒ»¸ö·½·¨Ò²¿ÉÒÔÊǶÔÏóʵÀý¡£
¾Ù¸öÀý×Ó£º
<mx:Script>
import flash.external.*;
public function myFunc():Number {
return 42;
}
public function initApp():void {
ExternalInterface.addCallback("myFlexFunction",myFunc);
}
</mx:Script>
2.ÄÇôÔÚHtmlÒ³ÃæÖУ¬ÏÈ»ñµÃSWF¶ÔÏóµÄÒýÓã¬Ò²¾ÍÊÇÓÃ<object .../>ÉùÃ÷µÄSwfµÄIdÊôÐÔ£¬±ÈÈç˵ÊÇMyFlexApp¡£È»ºó¾Í¿ÉÒÔÓÃÒÔÏ·½Ê½µ÷ÓÃFlexÖеķ½·¨¡£
<SCRIPT language='JavaScript' charset='utf-8'>
function callApp() {
var x = MyFlexApp.myFlexFunction();
alert(x);
}
</SCRIPT>
<button onclick="callApp()">Call App</button>
¶þ¡¢ÔÚFlexÖе÷Óà JavaScript
Äã¿ÉÒÔµ÷ÓÃHtmlÒ³ÃæÖеÄJavaScript£¬Í¨¹ýÓëJavaScriptµÄ½»»¥£¬¿ÉÒԸıäStyle£¬µ÷ÓÃÔ¶³Ì·½·¨¡£»¹¿ÉÒÔ½«Êý¾Ý´«µÝ¸øHtmlÒ³Ãæ£¬´¦ÀíºóÔÙ·µ»Ø¸øFlex£¬Íê³ÉÕâÑùµÄ¹¦ÄÜÖ÷ÒªÓÐÁ½ÖÖ·½·¨£ºExternalInterface()ºÍnavigateToUrl()¡£
ÔÚFlexÖе÷ÓÃJavaScript×î¼òµ¥µÄ·½·¨ÊÇʹÓÃExternalInterface()£¬¿ÉÒÔʹÓôËAPIµ÷ÓÃÈÎÒâJavaScript£¬´«µÝ²ÎÊý£¬»ñµÃ·µ»ØÖµ£¬Èç¹ûµ÷ÓÃʧ°Ü£¬FlexÅ׳öÒ»¸öÒì³£¡£
ExternalInterface·â×°Á˶Ôä¯ÀÀÆ÷Ö§³ÖµÄ¼ì²é£¬¿ÉÒÔÓÃavailableÊôÐÔÀ´²é¿´¡£
ExternalInterfaceµÄʹÓ÷dz£¼òµ¥£¬Óï·¨ÈçÏ£º
flash.external.ExternalInterface.call(function_name: String[, arg1, ...]):Object;
²ÎÊý
Ïà¹ØÎĵµ£º
function GetRequest()
{
var url = location .search; //»ñÈ¡urlÖÐ"?"·ûºóµÄ×Ö´®
var theRequest = new Object();
if(url.indexOf("?") != -1)
......
ѧÓÃJS£¨javascript£©Óï¾ä´óÈ«¡£¶Ô³õѧÕߺÜÓаïÖú ¡£ÏÖÔÚÕûÀí³öÀ´£¬Ï£ÍûÄܰïÖú´ó¼Ò¡£
1.document.write(""); Êä³öÓï¾ä
2.JSÖеÄ×¢ÊÍΪ//
3.´«Í³µÄHTMLÎĵµË³ÐòÊÇ:document->html->(head,body)
4.Ò»¸öä¯ÀÀÆ÷´°¿ÚÖеÄDOM˳ÐòÊÇ:window->(navigator,screen,history,location,document)
5.µÃµ½±íµ¥ÖÐÔªËØµÄÃû³ÆºÍ ......
DOM
Document Object Model
ÊDZí´ïʽXMLÎĵµµÄ³£¼û·½Ê½£¬DOM¸ø¿ª·¢ÕßÌṩÁËÒ»ÖÖ¶¨Î»XML²ã¼¶½á¹¹µÄÖ±¹Û·½·¨¡£
½âÎö²¢ä¯ÀÀDOMÎĵµµÄÓÐЧ·½·¨ÎÞÒÉÄܼò»¯JavaScriptµÄ¿ª·¢¡£
¹é¸ù½áµ×£¬JavaScriptÖоø´ó²Ù×÷¶¼ÊÇJavaScriptºÍÍøÒ³ÀﲻͬµÄHTMLÔªËØÖ®¼äµÄ½»»¥£¬¶øDOMÔòÊǼò»¯ÕâÒ»¹ý³ÌµÄ³öÉ«¹¤¾ß¡£
ÀýÈ磺
» ......
ÃæÏò¶ÔÏóµÄ
JavaScript
ÒýÓã¨
reference
£©
“ÒýÓÔÊÇÒ»¸öÖ¸Ïò¶ÔÏóʵ¼ÊλÖõÄÖ¸Õë¡£ÕâÊÇÒ»¸ö¼«ÎªÇ¿´óµÄÌØÐÔ£¬µ«ÓÐÒ»¸öǰÌ᣺ʵ¼ÊµÄ¶ÔÏó¿Ï¶¨²»»áÊÇÒýÓá£×Ö·û´®ÓÀÔ¶ÊÇ×Ö·û´®£¬Êý×éÓÀÔ¶ÊÇÊý×é¡£²»¹ý¶à¸ö±äÁ¿È´Äܹ»Ö¸Ïòͬһ¶ÔÏó¡£
JavaScript
»ùÓڵľÍÊÇÕâÑùÒ»¸öÒýÓÃϵͳ¡£
ÕâÃÅÓïÑÔͨ¹ýά»¤Ò»Ïµ ......
ÓÉÓÚÎÒµÄÄǸö¡¶Çóflash¿Ø¼þµÄÊôÐÔ¼°Ê¼þ·½·¨ÔÚC#ÖС·Ìû×ÓÓÉÓÚÎÒ×Ô¼ºµÄ»Ø¸´³¬¹ý3´Î£¬ÎÞ·¨¸¡³öË®ÃæÁË¡£
½ñÌì¾¹ýϸÐĵĹ۲ìÍøÂçµÄÀý×Ó,Ã÷°×ÁËһЩflashºÍC#µÄ½»»¥¡£°Ñ¾Ñé·ÖÏí¡£
Àý×Ó£º
private void axShockwaveFlash1_FSCommand(object sender, &nbs ......