快三计划qq群

此頁面上的內容需要較新版本的 Adobe Flash Player。

獲取 Adobe Flash Player

    您現在的位置是:Flash動畫3D模型
      隨著Flash的日益普及, Flash在WEB開發上面可是大顯身手,既然是WEB-Site,那當然離不開基本的Html頁面,以下是本人平時在制作Flash站點時候經常要用到的與Html方面的實用小技巧,不算多適合剛剛接觸用Flash進行WEB開發的朋友,希望能夠對大家有一定的幫助,本人算不上什么高手,錯誤之處還是難免的,請大家多多包涵,謝謝!
1.動態解析FlashWEB應用程序的HTTP服務器路徑
      玩過Flash+ASP/PHP開發的朋友都知道,在Flash從后臺腳本讀取數據的時候,不能直接的
用如“loaddata.asp”這樣的路徑,必須是//www.domain.com/Application/loaddata.asp的路徑。有些人問了?為什么呢?我說說我的理解,當FlashPlayer受到load(“loaddata.asp”)這個命令的時候,他會認為loaddata.asp文件是一個普通的TXT文本文件,于是便不經過任何處理便直接讀入Flash內部,當然,讀出的結果就是<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>,所以就無法根據我們的意愿來處理數據了,而當FlashPlayer執行load(“//www.domain.com/Application/loaddata.asp”)這個命令的時候,他就不再是本地的TXT文件讀取命令,而是一個HTTP請求,FlashPlayer把這個請求發送到HTTP服務器,服務器的IIS解析腳本返回結果后Flashplayer便可以正確的處理這些數據了。(廢話一堆)
      好了,進入正題,雖然輸入HTTP路徑就可以正確讀取數據,但是在程序開發測試階段可能經常需要開發者更換服務器,那樣就對我們造成了一定的麻煩,你每更換到另外一個服務器上面的時候就要修改一次他的HTTP路徑,如果讀取了N(N≠0)個文件,難道還要手動修改N次?當然不是,那么通過下面這個小技巧便可以輕松解決這個問題:
把SWF文件嵌入到一個ASP頁面里面,輸入如下代碼:
<%
Dim PageUrl,URLarry,i,ApplicationURL
PageUrl="//" & 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  '這一句僅僅是測試代碼是否正確,可省
%>
      好了,對ASP有一定了解的朋友應該都明白代碼是什么意思了,PHP也可以用這種思路來寫
      下面在SWF路徑中可以這樣寫   <%="flash.swf?myserver="&ApplicationURL%> 這樣就可以通過URL把變量傳遞給SWF文件,在Flash影片中便可以直接訪問這個變量了,就是_root.myserver。 好的,現在來讓我們測試一下結果,先編寫一個loaddata.asp,讓他返回一個back變量。
      打開FLASH,新建一個文件。然后在場景中拖入兩個動態文本框,分別命名為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,發布影片,,然后把SWF文件嵌入之前的那個ASP頁面,就可以看看效果了,分別在IE地址欄里面輸入//127.0.0.1/**** , //localhost/***** , //本機IP地址/**** 如果都能正確讀取,那就說明已經OK了,呵呵,下面的慢慢玩吧!    
2.在HTML頁中讓Flash成為透明背景
      這個不算我自己發現的技巧,很早在經典論壇快三计划qq群看到水藍色青蛙//www.blueidea.com/bbs/viewuser.asp?username=qhwa 給一個網友的回復知道了這個方法,但好像知道的朋友很少,經常有些人問我類似這樣的問題,今天把他作為一個實用技巧貢獻給大家。
      方法主要是在網頁中的Flash加入一個參數,讓網頁設定Flash文件背景透明,Flash文件本身做不到
      這里以Dreamwaver為例,點擊Flash文件,,然后點擊“參數”按鈕,彈出參數設定窗口,增加一個參數
<param name="wmode" value="transparent">
      這樣,在HTML頁面中Flash文件便可以透明了這個技巧主要感謝水藍色青蛙,我僅僅是傳播,呵呵~
類似的東東: //www.dengjie.com/weblog/comment.asp?post_id=5   這是有關讓SWF文件在Windows下打開時的窗體透明軟件。
3.動態設定Flash的尺寸大小
      這個技巧來源于一個國外的實例,很實用,大家可以看看先//www.dengjie.com/weblog/comment.asp?post_id=462
在線演示//2mdc.com/resizableFlash/
這個技巧非常適合一些無極擴展菜單之類的特效,可以脫離HTML大小的限制,任意增加菜單的長度,下面就以蛋蛋的Flash+XML無極擴展菜單為例子,如何動態設定FLASH文件在Html頁面中的大小
最終效果演示: //www.blackflasher.net/download/index.htm
首先我們來分析一下這個XML菜單的代碼:
//建立頂級菜單
function creatRootMenu() {
    _root.creatMyMenu(menuData.firstChild);
}
這個函數主要是調用了creatMyMenu()函數,搜索整個代碼,找到creatMyMenu()函數
//建立子菜單
function creatMyMenu(a, b) {
    for (var i = 0; i<a.childNodes.length; i++) {
        this.createEmptyMovieClip("item"+i, i);
        var myMenu = this["item"+i];
        myMenu.creatMenu(a.childNodes[i], i, b);
    }
}
creatMyMenu()引入了2個值,其中a是一個XML對象,那么我們如果要計算新的尺寸,就需要知道一共打開了多少個菜單,可以在函數中加一句trace("這個子菜單有"+a.childNodes.length),然后測試影片,返回結果為 這兩次返回的結果主要是第一次生成了3個主菜單,而主菜單的生成函數中嵌入了一個檢查菜單是否展開的函數,若展開則繼續生成子菜單,既第一個分類中的7個子菜單。
現在已經確定了菜單初始化時生成的數量,下一步確定菜單在打開和關閉時所生成的數量。
大概瀏覽一下整體代碼,可以看到有一個函數menuDrawBg()其中有好幾個鼠標事件,那么這個函數應該是決定鼠標事件出發以后所執行命令的函數。我們主要看onRelease事件:
this.bg.onRelease = function() {
    getURL(this._parent.XMLData.attributes.url,this._parent.XMLData.attributes.targetWindo);
        if (!(Number(this._parent.XMLData.attributes.open))) {
            this._parent.XMLData.attributes.open = 1;
            this._parent.creatMenu(this._parent.XMLData, this._parent.XMLIndex, 1);
        } else {
            if (Number(this._parent.XMLData.attributes.open)) {
                this._parent.item.removeMovieClip();
                this._parent.XMLData.attributes.open = 0;           
            }
        }
    };
這個事件中主要判斷XML對象中的OPEN屬性,控制開/關,首先判斷“!(Number(this._parent.XMLData.attributes.open)”條件既若菜單的open屬性為0則打開菜單,再往下看,先不要急著取得打開的菜單數目,可以看到里面調用了一個creatMenu()函數,搜索找到creatMenu()函數。最后找到這一句:“MovieClip.prototype.creatMenu = menuInit;”往下看,就是menuInit函數的定義,稍微看看你可以發現這個函數也調用了creatMyMenu()函數,我們之前已經修改過了creatMyMenu()函數,那么這里則可以省去這個步驟,下面看看關閉菜單的代碼,其中的XML對象為this._parent.XMLData,那么要取得關閉菜單的數目取得this._parent.XMLData的項數即可,增加一個trace("菜單關上"+this._parent.XMLData.childNodes.length)語句,然后測試。
     測試無誤后,下面要開始計算新的高度。在代碼中加如下列語句:
function newSize(width,height){
    _root.nowheight=height
    trace("新的寬度為"+width+",新的高度為"+height)
}
這里先測試計算結果是否正確,然后在之前修改好的幾個函數中分別加入這樣的語句
_root.newSize(0,取得的菜單數量*(菜單寬度+菜單間隔))
測試一切正常以后,就可以把Flash和Html結合起來了
先把之前的加入的語句做點修改:
function newSize(width,height){
    getURL("javascript:newSize(550,"+height+")")
    _root.nowheight=height
}
通過GetURL()函數來調用在HTML頁面中定義好的javascript函數,下面是newSize()函數的代碼:
<SCRIPT LANGUAGE="javascript">
<!--
function newSize(datoX,datoY) {
    if(document.all && !document.getElementById) {
         document.all['menu'].style.pixelWidth = datoX;
         document.all['menu'].style.pixelHeight = datoY;
    }else{
        document.getElementById('menu').style.width = datoX;
        document.getElementById('menu').style.height = datoY;
    }
}
//-->
</script>
      這段代碼并不難理解,主要是設定ID為menu的對象的CSS中一些屬性,既width和height
      在HTML頁面中,新建兩個表格,一個為2行2列,另外一個為單行單列,頁邊距均為0,插入幾幅漂亮的圖片然后在表格1里面的一個單元格插入一個Flash文件,并且參數設定如下:
      最后,在代碼中給Flash文件加入這樣的屬性name="menu" style="width:1px;height:1px;
      好了,現在就可以測試你的結果了。這個技巧主要是在于flash參數的傳遞和javascript函數的編寫上面,有興趣的朋友還可以再發揮發揮,看看能不能搞出什么新花樣來。
CopyRight2010 銀川慧科網絡有限公司版權所有 銀川網絡公司 銀川網站建設 銀川網站制作 銀川seo 寧夏企業郵局
地址:寧夏銀川市正源北街萬達廣場B座1707
電話:0951-6048280 18195099882 13709590950
寧ICP備08000251
体彩排三六码最大遗漏 时时彩个位单双的公式 飞艇计划6码红网 红牛快三计划软件 时时彩五星不定位稳赚 长期跟踪80557稳赚不赔 七乐彩历史开奖更新2013 重庆时时彩计划软件 88必发官方唯一网 藏分出款有用吗 网上明牌抢庄斗牛技巧 捕鱼达人2无限金币破解版 老虎机论坛虎 时时彩技巧 龙虎和赌博是骗局吗 千炮捕鱼破解版无限金币