在html呈现后加载javascript

在html呈现后加载javascript,javascript,Javascript,如果将p标记放在上面,将脚本放在下面,那么下面的脚本工作得非常好 <p id="dom_intro">Hello</p> <script> x=document.getElementById("dom_intro"); document.write("<p>This is the text of dom intro" + x.innerHTML + "Howzzat </p>"); </script> 你好 x=doc

如果将p标记放在上面,将脚本放在下面,那么下面的脚本工作得非常好

<p id="dom_intro">Hello</p> 

<script>
x=document.getElementById("dom_intro");
document.write("<p>This is the text of dom intro" + x.innerHTML + "Howzzat </p>");
</script>
你好

x=document.getElementById(“dom_简介”); document.write(“这是dom简介的文本”+x.innerHTML+“Howzzat

”; 如果将脚本放在第一位而将html p标记放在脚本下面的代码不起作用,则错误x为null或未定义

<script>
x=document.getElementById("dom_intro");
document.write("<p>This is the text of dom intro" + x.innerHTML + "Howzzat </p>");
</script>

<p id="dom_intro">Hello</p> 

x=document.getElementById(“dom_简介”);
document.write(“这是dom简介的文本”+x.innerHTML+“Howzzat

”; 你好
我尝试将脚本粘贴到外部javascript文件中,并放置在头部部分 我也犯了同样的错误。html呈现后,是否有javascript或jquery脚本加载javascript文件

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

});
和Javascript

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

}
jquery中的documentready在DOM就绪时执行该函数,这意味着在下载一些图像之前


当页面完全就绪时,即当所有图像加载完毕时,会触发Window.onload。

一旦dom就绪,您需要访问元素。出现此错误是因为您试图在加载dom之前访问p标记

这可能会解决你的问题

window.onload = function(){ 
  // your javascript here
   x=document.getElementById("dom_intro");
   document.write("<p>This is the text of dom intro" + x.innerHTML + "Howzzat </p>");

}
window.onload=function(){
//你的javascript在这里
x=document.getElementById(“dom_简介”);
document.write(“这是dom简介的文本”+x.innerHTML+“Howzzat

”; }
浏览器正在呈现他们看到的代码(线性)。这里的问题是,您的脚本试图访问一些尚不存在的内容,所以通常的做法是等到所有DOM元素就绪后再执行脚本

请看这里:

这相当于调用:

$(function() {
 // Handler for .ready() called.
});
内容在您放置它的地方执行,因此在第二种情况下,您试图在声明它之前使用“dom_intro”。但是您试图在html呈现之后加载javascript,所以您不想在html内容之前编写脚本,对吗

加载JS文件的常用方法是在close标记之前。这样,您就可以确保在加载所有html之前不会下载任何html

如果要在执行任何JS之前等待HTML完成加载,则必须执行以下操作:

纯javascript:

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

$(document).ready(function() {
    // do_whatever_you_want
}

如前所述,我使用window.onload,但脚本中的document.write会覆盖整个html页面。我应该在javascript文件中使用window.onload来处理我所关心的所有函数吗?你不能使用document.write!!!!你不应该…读一些关于javascript的书…如果你已经开始的话,还应该读一些。使用document.getElementById和InnerHtmlTanks。如前所述,我使用window.onload,但脚本中的document.write会覆盖整个html页面。我是否应该对javascript文件中的所有函数使用window.onload以及它的文档。write..u不能这样做..整个页面将被重新写入!!
$(document).ready(function() {
    // do_whatever_you_want
}