Profile
Facebook Blog
Works
Album
Toys
Links
Contact
Back Home
  Home > Blog
隨機讀取FLASH動畫小技巧
前幾天,客戶要求想在網站樣版中崁入可以隨機撥放的FLASH動畫。
這對不會寫程式的我來說,又夠傷惱筋的 >"<
還好,戲法是人變出來的,就用Javascript來達成這個需求吧!

我想這對於純視覺設計師來說,想要增加網頁美感
只要作幾個FLASH動畫檔,網頁Reload就會有不同的動畫產生
相信這會是個很有用的小撇步,作法如下:

範例網站: http://tghs.smartweb.tw/ (按reload即可變換動畫)
說  明: FLASH動畫在崁入網頁中需要指定他的寬度與高度,如此動畫才不會因為解析度不同而變形所以把動畫來源路徑、動畫寬度、動畫高度都設成 "變數" 讀取,再插入到呼叫FLASH動畫的語法中即可隨機讀取到不同的檔案。
語法說明:
<script>
//添加一個 addItem 方法
Array.prototype.addItem=function(url,w,h){
this[this.length]={src:url,width:w,height:h}
}

var movie=new Array() //定義變數
//添加數個 Flash 動畫,包括 Flash 動畫的位址、寬和高,可無限制增加檔案數
movie.addItem("0001.swf",500,100)
movie.addItem("0002.swf",500,100)
movie.addItem("0003.swf",500,100)

var n=Math.random()*movie.length|0 //取得隨機數
var oSrc=movie[n]["src"] //取得Flash的位址
var oWidth=movie[n]["width"] //取得Flash的寬度
var oHeight=movie[n]["height"] //取得Flash的高度

var oStr="<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase=" http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width=""+oWidth+"" height=""+oHeight+"">
<param name="movie" value=""+oSrc+"">
<param name="quality" value="high">
<embed src=""+oSrc+"" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width=""+oWidth+"" height=""+oHeight+""> </embed></object>"
</script>

======================================================
以上這段可放於 HEAD 與 BODY 之間,或獨立寫成 xxx.js 檔
======================================================

在要放置呼叫 FLASH 動畫的地方,用下面這串語法替代掉
<script>document.write(oStr)</script>

好啦,就是這麼簡單
鐵定讓您設計出來的網站,更出色
當然,可以跟客戶要求個好價錢才是重點 ^^