Мой собственный $(документ).ready()

У меня следующая проблема: у меня есть сайт, который не может иметь зависимости от javascript-файлов. Я хочу иметь ту же функцию, что и $(document).ready() в jquery. Как это будет выглядеть? Благодарю.

4 ответа

Решение

onLoad работает, но ждет, пока все изображения и прочее не будут загружены. Если вы просто хотите, чтобы он работал, когда DOM готов, вы можете сделать это (см. Здесь):

// Create onDomReady event
window.onDomReady = function(f){
    if(document.addEventListener){
        document.addEventListener("DOMContentLoaded", f, false);
    }
    // For IE
    else{
        document.onreadystatechange = function(){
            if(document.readyState == "interactive"){
                f();
            }
        };
    }
};

// Attach a callback to onDomReady
window.onDomReady(function(){
    alert("The DOM is ready!");
});

Вы можете просто посмотреть на исходный код jQuery. Если вы хотите простую "эмуляцию", просто включите / вызовите свой JavasScript как последний элемент <body>

   <!-- ... start of your HTML document -- -->
   <script type="text/javascript">
      likeDocumentReady();
    </script>
  </body>
</html>

До того, как jQuery onLoad стал обычной практикой, вы можете найти подробный ответ по этой ссылке, где вы можете найти решение для кроссбраузерного решения.

http://www.javascriptkit.com/dhtmltutors/domready.shtml

Я думаю, вы ищете onload событие. Но да123 правильно, вы должны начать принимать ответы.

window.onload = function() {
    // yadda
}
Другие вопросы по тегам