HTML <object> 標簽的重要屬性
archive 屬性
因為性能方面的原因,可以選擇預先下載包含一個或多個檔案中的對象集。對基于 Java 的應用程序來說尤其是這樣,在這些應用程序中,一個 Java 類將會依賴于很多其他類才能完成它的工作。
archive 屬性的值是一個用引號括起來的 URL 列表,其中每個 URL 都指向一個在顯示或執(zhí)行對象之前瀏覽器需要加載的檔案文件。
classid 屬性
classid 屬性用于指定瀏覽器中包含的對象的位置,通常是一個 Java 類。
它的值是對象的絕對或相對的 URL。如果提供了 codebase 屬性的話,相對 URL 是相對于 codebase 屬性指定的 URL 而言的;否則,它們是相對于當前文檔的 URL。
例如,為了執(zhí)行包含在 clock.class 文件中的時間 Java applet,可以在 HTML 文檔中包含如下的代碼:
<object classid="clock.class"></object>
瀏覽器將會用當前文檔的基本 URL 為這個 applet 查找代碼。因此,如果當前文檔的 URL 如下所示:
http://www.fzitv.net/time.html
瀏覽器將會在下列地址為我們的 clock.class 實例獲取 applet 代碼:
http://www.fzitv.net/clock.class
提示:classid 屬性與 <applet> 標簽的 code 屬性類似,提供了包含這個對象的文件名。
codebase 屬性
codebase 屬性是一個可選的屬性,提供了一個基本的 URL。該屬性的值是一個 URL,該 URL 指向的目錄包含了 classid 屬性所引用的對象。
codebase URL 會覆蓋文檔的基本 URL,但不會永久替代它。如果不使用 codebase 屬性,這個基本 URL 就是默認值。
現(xiàn)在,我們繼續(xù)使用前面的那個例子,假設文檔來源于 http://www.fzitv.net,但是這個時鐘 applet 放在一個名為 classes 的單獨目錄中。通過指定 classid= "classes/clock.class" 無法獲得這個 applet。相反,需要將 codebase 屬性和新的基本 URL 包含在內(nèi):
<object classid="clock.class" codebase="http://www.fzitv.net/classes/">
</object>
這行語句可以解析為這個 URL:
http://www.fzitv.net/classes/clock.class
盡管我們在此例中使用了絕對 URL,實際上也可以使用相對 URL。例如,applet 往往和主機文檔一起保存在同一臺服務器上,因此,處于重新定位的緣故,為 codebase 指定一個相對的 URL,情況往往更好一些,例如:
<object classid="clock.class" codebase="/classes/">
</object>
提示:從以上幾個例子可以看到,codebase 屬性與 classid 屬性配合使用,可以指定對象的完整 URL。
codetype 屬性
codetype 屬性用于標識程序代碼類型。
只有在瀏覽器無法根據(jù) classid 屬性決定 applet 的 MIME 類型,或者如果在下載某個對象時服務器沒有傳輸正確的 MIME 類型的情況下,才需要使用 codetype 屬性。
codetype 屬性與 type 屬性類似。不同的是,它用來標識程序代碼類型,而 type 屬性用來標識數(shù)據(jù)文件類型。
下面這個例子顯式地告知瀏覽器,對象的代碼是 Java:
<object codebase="clock.class" codetype="application/java">
</object>
declare 屬性
declare 屬性可以定義一個對象,但同時防止瀏覽器進行下載和處理。
與 name 屬性一起使用時,這個工具類似于更為傳統(tǒng)的編程語言中的某種前置聲明,這樣的聲明能夠延遲下載對象的時間,直到這個對象確實在文檔中得到了應用。
data 屬性
data 屬性用于指定供對象處理的數(shù)據(jù)文件的 URL。
該屬性的值是文件的 URL,該 URL 可能是相對于文件基本 URL 的絕對 URL 或相對 URL,或者是相對于用 codebase 屬性提供的 URL 的絕對或相對 URL。
瀏覽器通過插入到文檔中的對象類型來決定數(shù)據(jù)的類型。
該屬性類似于 <img> 標簽中的 src 屬性,因為它下載的是要由包含對象進行處理的數(shù)據(jù)。當然,它們之間的差別在于,data 屬性允許包含幾乎任何文件類型,而不僅僅是圖像文件。