загрузите JavaScript после того, как HTML отдаст

Ниже работ сценария, превосходных, если признак p помещается выше и сценарий, помещенный ниже

Hello

<script> x=document.getElementById("dom_intro"); document.write("

This is the text of dom intro" + x.innerHTML + "Howzzat

"); </script>

Если тот же самый код, где сценарий занимает первое место и HTML p признак, помещается ниже сценария, это не работает, я добираюсь, ошибка x пустой или неопределенный

<script>
x=document.getElementById("dom_intro");
document.write("

This is the text of dom intro" + x.innerHTML + "Howzzat

"); </script>

Hello

Я попытался приклеить сценарий во внешнем файле JavaScript и поместил в главном разделе Я получаю ту же самую ошибку. Есть ли любой сценарий JavaScript или jQuery, чтобы загрузить файл JavaScript после того, как у HTML будет rendred

0
nl ja de

4 ответы

необходимо получить доступ к элементу, как только dom готов. вы получаете эту ошибку потому что ваша попытка получить доступ к признаку p перед dom быть загруженным.

это может решить вашу проблему

window.onload = function(){ 
 //your JavaScript here
   x=document.getElementById("dom_intro");
   document.write("

This is the text of dom intro" + x.innerHTML + "Howzzat

"); }
1
добавлено
хорошо его document.write.. u косяк делают это.. вся страница будет письменным ре!!
добавлено автор geekman, источник
Спасибо. Как сказано я использовал window.onload, но document.write в рамках сценария переписывает всю страницу HTML. Если я использую window.onload для всех функций, я объявляю в своем файле JavaScript
добавлено автор user1934140, источник

jQuery:

$(document).ready(){function(){
//yourcode

});

И JavaScript

window.onload=function(){
//your code

}

Документ, готовый в jQuery, выполняет функцию, когда DOM готов, который означает, прежде чем некоторые изображения будут загружены.

Window.onload запущен, когда страница абсолютно готова, это - когда все изображения закончены, загрузив.

1
добавлено
u использование косяка document.write!!!! вы не были должны.. прочитайте некоторые книги по JavaScript.. еще немного, если вы уже начали.. используйте document.getElementById и innerHTML
добавлено автор geekman, источник
Как сказано я использовал window.onload, но document.write в рамках сценария переписывает всю страницу HTML. Если я использую window.onload для всех функций, я объявляю в своем файле JavaScript
добавлено автор user1934140, источник

Браузеры отдают ваш код, поскольку они видят его (lineary). Здесь проблема состоит в том, что ваш сценарий пытается получить доступ к чему-то, что не делает существует все же, таким образом, это - обычная практика, чтобы ждать, пока все элементы DOM не готовы и затем выполняют сценарий.

Please look here: http://api.jquery.com/ready/

$(document).ready(function() {
 //Handler for .ready() called.
});

Который эквивалентен запросу:

$(function() {
//Handler for .ready() called.
});
0
добавлено

The <script> content is executed where you place it, so in the second case, you are trying to use "dom_intro" before it is declared. But you're trying to load the JavaScript AFTER the html has rendered, so you don't want to write the script BEFORE the html content, right?

Обычный способ загрузить файлы JS незадолго до </body> close tag. That way you'll be sure that any html won't be downloaded before all your HTML is loaded.

And if you want to wait for the HTML to finish loading before executing any JS, you must do something like this:

Plain javascript:

window.onload = function() {
   //do_whatever_you_want
}

Jquery:

$(document).ready(function() {
   //do_whatever_you_want
}
0
добавлено
JavaScript Jobs — чат
JavaScript Jobs — чат
8 336 участник(ов)

JavaScript Jobs — чат для поиска работы и людей Правила оформления: https://teletype.in/@telegram-ru/r1WQe5F1m См. также: @mobile_jobs, @devops_jobs, @nodejs_jobs, @react_js, @angular_ru, @js_ru

JavaScript.ru
JavaScript.ru
7 932 участник(ов)

Сообщество сайта JavaScript.ru в Slack.

pro.js
pro.js
4 675 участник(ов)

Про JavaScript и NodeJS Invite: https://t.me/joinchat/Be4rsT5Rsgq30DHutjxXgA Правила: http://telegra.ph/ru-chat-rules-06-19 Вакансии только с ЗП, не чаще раза в неделю.

JavaScript — русскоговорящее сообщество
JavaScript — русскоговорящее сообщество
3 269 участник(ов)

Рекомендуем сразу отключить уведомления Правила: https://rudevs.network/ByaMH6un7 См. также: @js_noobs_ru, @nodejs_ru, @typescript_ru, @react_js, @electron_ru Вакансии и поиск работы: @javascript_jobs

JavaScript Noobs — сообщество новичков
JavaScript Noobs — сообщество новичков
2 484 участник(ов)

Чат для новичков

javascript_ru
javascript_ru
915 участник(ов)

Сообщество любителей самого популярного языка программирования в мире. Чат основан в 2009 году. Логи: https://goo.gl/9EOeM7 Поддержка бота: @chat_linker (ссылка на репу внутри) Вам будут интересны @frontend_ru и @css_ru

jsChat
jsChat
603 участник(ов)

Чат посвященный программированию на языке javaScript Перед отправкой ссылки на Ваш контент посоветуйтесь с админом Все ссылки удаляются ботом автоматически

JavaScript for Zombies Chat
JavaScript for Zombies Chat
492 участник(ов)

Чат про JavaScript для настоящих zombie! Вход строго по приглашениям! Ссылка для строгих приглашений: https://t.me/joinchat/AAMBHz3Uyr0tuZ7VaB029g

All That JS
All That JS
417 участник(ов)

JS на русском