2014-01-23 7 views
0

У меня есть javascript на странице, его нельзя комбинировать.Сделать все JS ждать загрузки страницы

Это прослушивание меня с количеством «document.wait» и т. Д. Функций на каждом из них, есть ли лучший способ сделать это, или я застрял с ним?

Goog'ling ничего не обнаружил.

+1

Возможно, вам захочется снова отправить Google, на этот раз с 'load event'. –

+1

вы должны использовать: $ (function() { // введите код здесь // }); не только ожидает загрузки страницы, но и не позволяет пользователям запускать ваши функции на консоли. –

ответ

2

По словам других переместить все ваши скрипты в нижней части страницы, прямо перед </body>. Это решит многие ваши проблемы. Но он не будет решать все тонкости браузеров-несоответствий специально для старого IE.

Если вы хотите, чтобы получить представление о том, как сложно это обеспечить такое осуществление кросс-браузер, посмотрите на следующий популярный вопрос:

$(document).ready equivalent without jQuery

Например, не прислониться document.addEventListener в IE предлагает свою собственную фирму document.attachEvent. И это только первый шаг.

1

Лучше всего всегда ставить теги сценария как раз перед тем, как закрыть тело:

<script src="path/to/my/script"></script> 
    <!-- more scripts, etc --> 
</body> 

Таким образом, все остальное, безусловно, уже загружен и не нужно «ждать». See this recommendation from google.

В противном случае, вы можете использовать:

window.addEventListener('load', function() { 
    //your js here 
}); 
Смежные вопросы