1.首先object是什么
定義一個嵌入的對象。請使用此元素向您的 XHTML 頁面添加多媒體。
此元素允許您規定插入 HTML 文檔中的對象的數據和參數,以及可用來顯示和操作數據的代碼。
<object> 標簽用於包含對象,比如圖像、音頻、視頻、Java applets、ActiveX、PDF 以及 Flash。
object 的初衷是取代 img 和 applet 元素。不過由於漏洞以及缺乏瀏覽器支持,這一點並未實現。
瀏覽器的對象支持有賴於對象類型。不幸的是,主流瀏覽器都使用不同的代碼來加載相同的對象類型。
而幸運的是,object 對象提供了解決方案。如果未顯示 object 元素,就會執行位於 <object> 和 </object> 之間的代碼。通過這種方式,我們能夠嵌套多個 object 元素(每個對應一個瀏覽器)。
2.object中classid
<param> 標簽定義用於對象的 run-time 設置。
不要對圖像使用 <object> 標簽,請使用 <img> 標簽代替。
先看一個例子:
<object classid="clsid:F08DF954-8592-11D1-B16A-00C0F0283628" id="Slider1" width="100" height="50">
<param name="BorderStyle" value="1" />
<param name="MousePointer" value="0" />
<param name="Enabled" value="1" />
<param name="Min" value="0" />
<param name="Max" value="10" />
</object>
其中,param的用處:param 元素允許您為插入 XHTML 文檔的對象規定 run-time 設置
也就是說,此標簽可為包含它的 <object> 或者 <applet> 標簽提供參數。
而classid 就是ActiveX控件的ID
這個控件的ID我們可以這么找:
這個microsoft slider control是微軟滑塊控制插件
回想:傳送門:Jquery Uploadify3.21.與2.1版本 使用中存在的問題--記錄三
之前在jQuery uploadify上就遇到了類似問題,就是在IE下面那個用flash的BUTTON沒反應,所以最后加上了一句:
if ($.browser.msie) { $(".swfupload").attr("classid","clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"); }
這里聲明一下:在新版本的jQuery中 $.browser.msie該方法已經被廢棄。所以要避免使用這個判斷了!
同樣我們找這個classid:
找到了兩個都是flash的插件id。
第一個是IE瀏覽器的,一個是非IE使用的。
3.object與embed
我們要在網頁中正常顯示flash內容,那么頁面中必須要有指定flash路徑的標簽。也就是OBJECT和EMBED標簽。
OBJECT標簽是用於windows平台的IE瀏覽器的,而EMBED是用於windows和Macintosh平台下的Netscape Navigator瀏覽器以及Macintosh平台下的IE瀏覽器。
windows平台的IE利用Activex控件來播放flash而其它的瀏覽器則使用Netscape插件技術來播放flash。
<object>和<embed>標簽的區別:
兩者都是用來播放多媒體文件的對象,object元素用於IE瀏覽器,embed元素用於非IE瀏覽器,為了保證兼容性,通常我們同時使用兩個元素,瀏覽器會自動忽略它不支持的標簽。同時使用兩個元素時,應該把<embed>標簽放在<object>標簽的內部。
4.ActionScript
ActionScript(簡稱AS)是由Macromedia(現已被Adobe收購)為其Flash產品開發的 ,最初是一種簡單的腳本語言。
現在最新版本ActionScript3.0,是一種完全的面向對象的編程語言,功能強大,類庫豐富,語法類似JavaScript,多用於Flash互動性、娛樂性、實用性開發,網頁制作和RIA(因特網應用程序)開發
這里涉及到一個編寫flash腳本的擴展
使用工具:Flash CS6
傳送門:ActionScript 3.0入門:Hello World、文件讀寫、數據存儲(SharedObject)、與JS互調
5.flash與js的交互
傳送門:
Flash研究(一)——本地通訊