正文

互操作性與兼容性(8)

IE8 & 9開發(fā)實戰(zhàn):基于下一代IE的應用開發(fā) 作者:(美)克羅利


  

2.3  兼容性視圖

兼容性視圖是一種機制,用來顯示為較早IE版本設計的網(wǎng)站,并不會妨礙對可互操作性Web標準的長期采用。簡而言之,它使IE在沒有“破壞Web”的情況下繼續(xù)前進,IE團隊就是這樣聲明的。兼容性視圖建立在一些基本原則的基礎之上:

●       默認情況下,所有網(wǎng)頁都運行在IE 8標準模式中(“默認標準”)。

●       通過兼容性視圖加載的頁面運行在IE 7標準模式中。

●       當在兼容性視圖中加載頁面時,“用戶代理”字符串和條件注釋指出該瀏覽器是IE 7。

●       兼容性視圖應用于整個域,包含子域在內(nèi)。

除非頁面通過X-UA-compatible <meta>標記或HTTP頭,顯式指定了其文檔模式,否則,當以下條件之一為真時,網(wǎng)頁將以“兼容性視圖”顯示:

●       它的域出現(xiàn)在用戶的“兼容性視圖”設置列表中(通過單擊“兼容性視圖”按鈕添加,或者在“兼容性視圖設置”中人工插入)。

●       它的域出現(xiàn)在“兼容性視圖組策略”鍵中。

●       它的域出現(xiàn)在微軟兼容性視圖列表中。

●       它的域處于Intranet區(qū)域中,并且為所有intranet站點啟用了兼容性視圖。

●       對所有網(wǎng)站打開了兼容性視圖。

2.3.1  微軟兼容性視圖列表

在IE 8發(fā)布時,很多常用網(wǎng)站在IE 8標準模式下運行時都會中斷顯示。微軟認為,一旦用戶在自己的系統(tǒng)中安裝了IE 8,這種情況就會妨礙用戶的日常瀏覽。于是就創(chuàng)建了“微軟兼容性視圖列表”來緩解這一情況;這個列表中包含了一些流行網(wǎng)站的域,這些網(wǎng)站更適于在IE 7兼容模式性運行。這個列表中的所有域都將被加載到“兼容性視圖”中,直到網(wǎng)站的主人采取措施,確保它與IE 8保持兼容,以及(或者)請求遷移為止。

微軟最早是在IE 8候選版期間向用戶發(fā)布的“兼容性視圖列表”。這個列表是使用Windows Update發(fā)送的,可以通過微軟下載中心獨立下載。希望下載這個列表的用戶必須選擇接收并安裝它。開發(fā)人員不應當依賴于用戶來完成這一工作,因為并不是所有用戶都安裝了這個列表。

這個列表本身是實現(xiàn)了ie8compatlistdescription命名空間的XML文檔。這個列表中的域被保存為<domain>標記中的字符串。這個XML文檔包含在IE資源庫中(res://iecompat.dll/ iecompatdata.xml)(見代碼清單2-6)。

代碼清單2-6  從兼容性列表中選擇域(截至2009年10月)

<?xml version="1.0" encoding="utf-8" ?>

<ie8compatlistdescription

xmlns="http://www.microsoft.com/schemas/ie8compatlistdescription/1.0">

...

<domain>americanexpress.com</domain>

<domain>americangreetings.com</domain>

<domain>amtrak.com</domain>

...

</ie8compatlistdescription>

2.3.2  控制兼容性設置

用戶和開發(fā)人員可以通過大量的公開入口點來控制以兼容性視圖顯示的域。通過“兼容性視圖”按鈕來啟用這一功能是最方便的,當這一功能可供使用時,將在地址欄中顯示這一切換按鈕(見圖2-2)。通過單擊這一按鈕,可以為任何一個域來開啟和關(guān)閉兼容性視圖;這一切換事件將會對域進行刷新,以顯示為期望狀態(tài)。

 


上一章目錄下一章

Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號