1
我正在構建一個必須在非常舊的瀏覽器(IE 8,Firefox 20等)上工作的Web應用程序。瀏覽器支持readyState交互式?
我可以依靠document.readyState being interactive and complete正常工作嗎?
基本上,我想在DOM加載後執行一些操作,但如果它已經加載,立即執行操作。就像這樣:
if (document.readyState == 'interactive' ||
document.readyState == 'complete') {
doAction();
} else {
document.onready = doAction;
}
你可以在5年前找到大量關於這個問題的文章。尋找domready js libs/snips;有3或4種方法可以做到這一點... – dandavis
謝謝!有趣的... jQuery在2006年使用document.readyState =='加載'的Safari ... http://code.jquery.com/jquery-1.0.js – dangerChihuahua007
互動狀態是不可靠的IE9和完全在早期的Android上缺席。後者的瀏覽器不支持'readyState'階段,但不支持'onreadystatechange'。這提供了一個機會,用if(typeof document.onreadystatechange!=='object')'過濾它。我測試腳本的'async'支持以排除IE9。使用'complete'似乎十分跨瀏覽器。 – Shikkediel