由於我無法控制的原因,該網站以怪癖模式工作。在這種情況下,Jquery會幫助我嗎?Jquery在Quirks模式下工作得很好嗎?
我期望jquery開發者今天專注於嚴格模式 - 未來的模式。另一方面,所有這些圖書館都開始緩解以怪癖模式工作的痛苦。
由於我無法控制的原因,該網站以怪癖模式工作。在這種情況下,Jquery會幫助我嗎?Jquery在Quirks模式下工作得很好嗎?
我期望jquery開發者今天專注於嚴格模式 - 未來的模式。另一方面,所有這些圖書館都開始緩解以怪癖模式工作的痛苦。
NO!
根據official jQuery site v. 1.8.1:
不要使用怪癖模式! jQuery從來不支持Quirks模式,我們 不在Quirks中執行任何測試。這可能會影響像
$("window").height()
這樣的值,並且爲了支持一些現代瀏覽器功能而更改jQuery 1.8 Quirks模式結果 。我們看到的問題案例的大多數 來自開發人員,他們想要進入 標準模式,但在 標籤之前有一個無效的文檔類型或無關標記。如有疑問,請使用簡單和簡短的<!doctype html>
。
根據jQuery Migrate Plugin - Warning Messages
JQMIGRATE:jQuery是不Quirks模式兼容
原因:瀏覽器中的 「怪癖模式」 運行時的HTML文檔沒有一個
<!doctype ...>
作爲其第一個非空行,或文件中的文檔類型無效時。此模式會導致瀏覽器模擬90年代(HTML3)行爲。在Internet Explorer中,它還會導致許多高性能API被隱藏起來,以便更好地模擬古代瀏覽器。 jQuery從來沒有與quirks模式兼容,或者在quirks模式下進行過測試。解決方案:在文檔中放入一個有效的doctype,並確保文檔在標準模式下呈現。最簡單有效的文檔類型是HTML5,我們強烈推薦:
<!doctype html>
。 jQuery Migrate插件不會嘗試修復與怪癖模式相關的問題。
瀏覽器中的「過渡」HTML/XHTML和怪異渲染模式是兩個不同的主題。你可能要考慮編輯這個問題的標題。 – 2009-09-30 20:13:18
我調整了標題。 – ceejayoz 2009-09-30 20:48:56