欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Flash 與 html 的一些實(shí)用技巧

 更新時(shí)間:2006年11月23日 00:00:00   作者:  
隨著Flash的日益普及, Flash在WEB開發(fā)上面可是大顯身手,既然是WEB-Site,那當(dāng)然離不開基本的Html頁(yè)面,以下是本人平時(shí)在制作Flash站點(diǎn)時(shí)候經(jīng)常要用到的與Html方面的實(shí)用小技巧,不算多適合剛剛接觸用Flash進(jìn)行WEB開發(fā)的朋友,希望能夠?qū)Υ蠹矣幸欢ǖ膸椭救怂悴簧鲜裁锤呤?,錯(cuò)誤之處還是難免的,請(qǐng)大家多多包涵,謝謝!

1.動(dòng)態(tài)解析FlashWEB應(yīng)用程序的HTTP服務(wù)器路徑

玩過Flash+ASP/PHP開發(fā)的朋友都知道,在Flash軟件里測(cè)試Flash從后臺(tái)腳本讀取數(shù)據(jù)的時(shí)候,不能直接的用如“l(fā)oaddata.asp”這樣的路徑,必須是http://www.domain.com/Application/loaddata.asp 或者 http: 開頭的路徑。有些人問了?為什么呢?

當(dāng)FlashPlayer里測(cè)試的時(shí)候收到load("loaddata.asp")這個(gè)命令的時(shí)候,他會(huì)直接讀swf文件路徑下的 loaddata.asp文件。但由于沒有經(jīng)過IIS的運(yùn)行處理,直接讀入Flash內(nèi)部,當(dāng)然,讀出的結(jié)果就是%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%類似這樣了,所以就無法根據(jù)我們的意愿來處理數(shù)據(jù)了,而當(dāng)FlashPlayer執(zhí)行l(wèi)oad("http://www.domain.com/Application/loaddata.asp")這個(gè)命令的時(shí)候,他就不再是本地的TXT文件讀取命令,而是一個(gè)HTTP請(qǐng)求,F(xiàn)lashPlayer把這個(gè)請(qǐng)求發(fā)送到HTTP服務(wù)器,服務(wù)器的IIS解析腳本返回結(jié)果后Flashplayer便可以正確的處理這些數(shù)據(jù)了。(廢話一堆)

當(dāng)然如果你清楚了路徑的關(guān)系,也可以把寫load("loaddata.asp")寫到Flash里,上傳的時(shí)候,把.asp .swf 和包含 .swf的html文件,都放在一個(gè)目錄里就行了。特別指出的是swf 在取得路徑時(shí),是取包含他的html和.asp的關(guān)系的。而不是 swf 與 asp的路徑關(guān)系。

說起來已經(jīng)是有一點(diǎn)暈了,但如果理解了路徑的關(guān)系,那就非常簡(jiǎn)單了。

好了,進(jìn)入正題,雖然輸入HTTP路徑就可以正確讀取數(shù)據(jù),但是在程序開發(fā)測(cè)試階段可能經(jīng)常需要開發(fā)者更換服務(wù)器,那樣就對(duì)我們?cè)斐闪艘欢ǖ穆闊忝扛鼡Q到另外一個(gè)服務(wù)器上面的時(shí)候就要修改一次他的HTTP路徑,如果讀取了N(N≠0)個(gè)文件,難道還要手動(dòng)修改N次?當(dāng)然不是,那么通過下面這個(gè)小技巧便可以輕松解決這個(gè)問題:

把SWF文件嵌入到一個(gè)ASP頁(yè)面里面,輸入如下代碼:
<%
Dim PageUrl,URLarry,i,ApplicationURL
PageUrl="http://" & Request.ServerVariables("http_host") & Request.ServerVariables("url")
Response.Write "PageURL="&PageUrl
URLarry=Split(PageUrl,"/")
Arryubound=ubound(URLarry,1)-1
For i=0 to Arryubound
ApplicationURL=ApplicationURL&URLarry(i)&"/"
NEXT
Response.Write "<br>ApplicationURL="&ApplicationURL  '這一句僅僅是測(cè)試代碼是否正確,可省
%>
好了,對(duì)ASP有一定了解的朋友應(yīng)該都明白代碼是什么意思了,PHP也可以用這種思路來寫,下面在SWF路徑中可以這樣寫   <%="flash.swf?myserver="&ApplicationURL%> 這樣就可以通過URL把變量傳遞給SWF文件,在Flash影片中便可以直接訪問這個(gè)變量了,就是_root.myserver。 好的,現(xiàn)在來讓我們測(cè)試一下結(jié)果,先編寫一個(gè)loaddata.asp,讓他返回一個(gè)back變量。

打開FLASH,新建一個(gè)文件。然后在場(chǎng)景中拖入兩個(gè)動(dòng)態(tài)文本框,分別命名為txt.url 然后在第一幀輸入以下代碼:


mytxt=new LoadVars()
mytxt.load(_root.myserver+"loaddata.asp")
mytxt.onLoad=function(success){
     if(success){
         txt.text=this.Back
         url.text=_root.myserver+"loaddata.asp"
     }else{
         txt.text="No File"
         url.text=_root.myserver+"loaddata.asp"
     }
}




好了,Ctrl+Enter,發(fā)布影片,,然后把SWF文件嵌入之前的那個(gè)ASP頁(yè)面,就可以看看效果了,分別在IE地址欄里面輸入http://127.0.0.1/**** , http://localhost/***** , http://本機(jī)IP地址/**** 如果都能正確讀取,那就說明已經(jīng)OK了,呵呵,下面的慢慢玩吧!

編輯語(yǔ):如果在調(diào)試的時(shí)候,用絕對(duì)路徑,那么在測(cè)試完畢上傳前,改為相對(duì)路徑會(huì)更方便整個(gè)目錄在站點(diǎn)里的移動(dòng),也就可以不用上述復(fù)雜的方法了。

相關(guān)文章

最新評(píng)論