Комментарии 36
а что значит «когда страница загружена»? Как определяется, что страница загружена?
Оригинальная статья какого года? У меня первая ассоциация: "школьник 21 века и кассетный плеер". Я так стар? Уже выросло поколение, не заставшее эпоху, когда половина сайтов работала на это хреновине?
> Я о таком не слышал.
А как же что-то типа этого?
<script src="//ajax.aspnetcdn.com/ajax/jquery/jquery-2.0.0.min.js"></script>
<script>window.jQuery || document.write('<script src=«js/jquery-2.0.0.min.js»>\x3C/script>')</script>
Поговаривают что некоторые программисты пользуют document.createElement('script') — врут наверное.
You can't do it synchronously.
И следующий ответ советует использовать document.write.
А зачем вам это делать synchronously? Какая объективная причина может быть для этого?
если сторонний скрипт или легаси — то да, может быть, но в своем коде — то проверяться надо и предохраняться. Зависимостей может не быть по многим причинам.
Использую, зачем вы из меня плюшевого мишку делаете? Дискуссия развернулась с вот этой фразы — "Существует ли нормальный повод применять document.write?". ПОВОД! Не нужда.
Извиняюсь за немного резкую фразу.
Принято )
Как- то не отделяю данные понятия. Нужда даёт повод.
Ну как же? "А как бы нам тут приспособится к этой гребаной либе, которая использует :"№%%:? Да, придется делать document.write." Это нужда.
"А как бы нам тут document.write поиспользовать. Очень хочется, есть где?" Это поиск повода.
Так вот поводов использовать document.write — нет, язык развился, DOM развился, есть нормальные инструменты, закопайте стюардессу.
Автор статьи, видимо, раньше в рекламе работал?
Существует ли нормальный повод применять document.write?
wnd=window.open('...');
wnd.document.open('....');
wnd.document.write('....');
*Под «моментально» имеется в виду время загрузки было меньше времени реакции человека.
Когда вызовы идут в основном потоке загрузки, то пишется в этот поток.
Но, например:
setTimeout(function () {
document.write(4);
}, 0);
Если страница будет долго грузится и таймер сработает раньше, он грохнет текущий документ ещё до его загрузки.
document.write('<script src="printC.js"></' + 'script>');
Но ведь и
document.write('<script src="printC.js"></script>');
будет работать точно также.
Это эстетство или есть определенные подводные камни которые обходят таким образом?
Закрывающий тег script может быть распознан браузером как конец скрипта. А вот вариант
document.write('<script src="printC.js"><\/script>');
Валиден повсюду.
del
попробуйте следующий пример:
document.write(1); document.write(2);
document.close(); document.write(3);
На экране будет только — 3
я прочитал эту статью в 2022 и должен отметить, что понимание того, в какой последовательности запускаются скрипты, если их несколько, спрашивают и сейчас
Это прикольная статья для ребусов на собеседованиях )
Удивительная история document.write