轉自:http://www.cnblogs.com/analyzer/articles/1299592.htmljavascript
我一直都在用SWFObject 插入flash,好處多多,代碼簡潔,不會出現微軟的「單擊此處以激活控件」的提示(據可靠消息,這個是微軟惹的官司,其結果是害苦了用戶)。不過先前的 調用方法着實有些繁瑣,先實例化->添加參數、變量->寫入,搞的跟把大象裝冰箱裏頭同樣麻煩。好在做者終於注意到這一點,在新的2.x版本中,其最簡單的調用竟只需一句話,而且不須要等待頁面加載完成,這意味着你能夠將這句話寫在頁面的任何地方,因而可知人類的科技水平進步之快,下面咱們就來列舉幾個咱們在平常開發中最經常使用到的幾個調用實例。
一、最簡單,最基本,只要想插入flash都能用到的經典一句話html
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF("test.swf", "yourFlashContainer", "300", "120", "9.0.0", "expressInstall.swf");
</script>
註解:調用方法embedSWF——插入SWF文件,參數依次是
@swf文件的地址;
@用於裝入swf文件的容器(如div)的id;
@flash的寬度;
@flash的高度(固然,這裏的寬高均可以使用諸如100%這樣的百分比來表示);
@正常播放該flash所需的最低版本;
@當版本低於要求時,執行該swf文件,這裏利用這個flash跳轉到官方下載最新版本的flash插件。(該參數能夠省略)
在同一個頁面插入多個flash到不一樣位置時,只要重複上面的語句,使用不一樣的容器id就能夠了。
二、給swf文件傳遞參數、變量、屬性的調用方法java
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
//一、使用Json初始化變量、參數、屬性
var flashvars = {
name1: "hello",
name2: "world",
name3: "foobar"
};
var params = {
menu: "false"
};
var attributes = {
id: "dynamicContent2",
name: "dynamicContent2"
};
swfobject.embedSWF("test6_flashvars.swf", "content2", "300", "120", "6.0.0", "expressInstall.swf", flashvars, params, attributes);
//二、傳統的初始化設置,效果同樣
var flashvars = {};
flashvars.name1 ="hello";
flashvars.name2 ="world";
flashvars.name3 ="foobar";
var params = {};
params.menu ="false";
var attributes = {};
attributes.id ="dynamicContent3";
attributes.name ="dynamicContent3";
swfobject.embedSWF("test6_flashvars.swf", "content3", "300", "120", "6.0.0", "expressInstall.swf", flashvars, params, attributes);
//三、直接寫在後面,就一句話,簡潔剽悍,不拖泥帶水
swfobject.embedSWF("test6_flashvars.swf", "content5", "300", "120", "6.0.0", "expressInstall.swf", {name1:"hello",name2:"world",name3:"foobar"}, {menu:"false"}, {id:"dynamicContent5",name:"dynamicContent5"});</script>
最後仍是調用embedSWF方法嵌入flash,其參數順序也很清晰,本人更喜歡第1中調用方法,看的不累,用着也方便。
三、一些強大的擴展功能
還有必要寫麼?
參考文獻:http://www.swffix.org/swfobject/testsuite/express