正文

互操作性與兼容性(8)

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


  

2.3  兼容性視圖

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

●       默認(rèn)情況下,所有網(wǎng)頁(yè)都運(yùn)行在IE 8標(biāo)準(zhǔn)模式中(“默認(rèn)標(biāo)準(zhǔn)”)。

●       通過(guò)兼容性視圖加載的頁(yè)面運(yùn)行在IE 7標(biāo)準(zhǔn)模式中。

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

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

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

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

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

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

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

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

2.3.1  微軟兼容性視圖列表

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

微軟最早是在IE 8候選版期間向用戶發(fā)布的“兼容性視圖列表”。這個(gè)列表是使用Windows Update發(fā)送的,可以通過(guò)微軟下載中心獨(dú)立下載。希望下載這個(gè)列表的用戶必須選擇接收并安裝它。開發(fā)人員不應(yīng)當(dāng)依賴于用戶來(lái)完成這一工作,因?yàn)椴⒉皇撬杏脩舳及惭b了這個(gè)列表。

這個(gè)列表本身是實(shí)現(xiàn)了ie8compatlistdescription命名空間的XML文檔。這個(gè)列表中的域被保存為<domain>標(biāo)記中的字符串。這個(gè)XML文檔包含在IE資源庫(kù)中(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  控制兼容性設(shè)置

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

 


上一章目錄下一章

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