Версия Дениса Чиккале:
var DOMReady = function(a, b, c) ( b = document c = 'addEventListener' b(c) ? b(c)('DocumentContentLoaded', a) : window.attachEvent('onload', a) ) DOMReady(function () ( alert('The DOM is Ready!'); ));
Свернуто:
var DOMReady = function(a,b,c)(b=document,c='addEventListener';b(c)?b(c)('DOMContentLoaded',a):window.attachEvent('onload',a))
Версия Дастина Диаса:
function r(f)(/in/.test(document.readyState)?setTimeout('r('+f+')',9):f())
У него также было репо для него, где код немного отличается (и выглядит более новым), так что вы можете попробовать это, хотя я нашел вышеупомянутое довольно эффективным как есть. Его ветка 0.3.0 требуется для IE 6-7-8.
Собственная функция DOM:
document.addEventListener('DOMContentLoaded', function() ( ));
В случае, если вы в порядке, вам нужно только поддерживать браузеры, которые это поддерживают.