随着IE开始区分标准模式和混杂模式,确定浏览器处于何种模式的需求也就应运而生。
IE为document对象添加了一个名为compatMode属性,这个属性的唯一使命就是表示浏览器处于什么模式。如下面的例子所示,如果是标准模式,则document.compatMode的值等于”CSS1Compat“,如果是混杂模式,则document.compatMode的值等于”BackCompat“。
if (document.compatMode == "CSS1Compat") { alert("Standards mode"); } else { alert("Quirks mode"); }后来,Firefox、Opera和Chrome都实现了这个属性。Safari从3.1版开始也实现了document.compatMode
IE8又为document对象引入了一个名为documentMode的新属性,其用法如下面的例子所示。这是因为IE8有3中不同的呈现模式,而因日这个属性正式为了分班这些模式。这个属性的值如果是5,则表示混杂模式(即IE5模式);如果是7,则表示IE7仿真模式;如果是8,则表示IE8标准模式。
if (document.documentMode > 7) { alert("IE 8+ Standards Mode"); }