Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
简单的Javascript DOM示例不起作用_Javascript_Html_Dom - Fatal编程技术网

简单的Javascript DOM示例不起作用

简单的Javascript DOM示例不起作用,javascript,html,dom,Javascript,Html,Dom,我正在学习如何将Javascript整合到Mac上的Objective-C应用程序中。我知道一些非常基本的HTML和非常少量的Javascript。Apple的WebKit DOM编程指南概述了Javascript和DOM的一些简单用法,但我无法让这个示例代码正常工作: <html> <head> <title>My Sample HTML file</title> <script language="javascript" typ

我正在学习如何将Javascript整合到Mac上的Objective-C应用程序中。我知道一些非常基本的HTML和非常少量的Javascript。Apple的WebKit DOM编程指南概述了Javascript和DOM的一些简单用法,但我无法让这个示例代码正常工作:

<html>
 <head>
  <title>My Sample HTML file</title>
  <script language="javascript" type="text/javascript">

 var parasDiv = document.getElementById("allMyParas");
 var thirdPara = document.createElement("p");
 thirdPara.setAttribute("id", "thirdParagraph");
 parasDiv.appendChild(thirdPara);
 thirdPara.innerHTML = "This is my third paragraph.";
 parasDiv.style.borderBottom = "1px #000 solid";
 var parasInDiv = parasDiv.getElementsByTagName("p");
 for (var i = 0; i < parasInDiv.length; i++) {
  parasInDiv[i].style.backgroundColor = "lightgrey";

 }

   </script>
 </head>
 <body>
  <div id="allMyParas" style="border-top: 1px #000 solid;">
<p id="firstParagraph">
    This is my first paragraph.
</p>
<p id="secondParagraph">
    This is my second paragraph.
</p>

我的示例HTML文件
var parasDiv=document.getElementById(“allMyParas”);
var thirdPara=document.createElement(“p”);
setAttribute(“id”,“thirdParagraph”);
帕拉斯迪夫·阿佩奇尔德(第三帕拉);
thirdPara.innerHTML=“这是我的第三段。”;
parasDiv.style.borderBottom=“1px#000实心”;
var parasInDiv=parasDiv.getElementsByTagName(“p”);
对于(变量i=0;i
这是我的第一段。

这是我的第二段。

结果是在我的浏览器和两个原始段落的顶部出现一条黑线,但不是应该创建的第三个段落

我试过Chrome、Firefox和Safari。它们产生相同的结果


有人能解释一下为什么苹果的示例代码不起作用吗

在创建
allMyParas
div或试图查找的任何元素之前执行代码。
您可以将代码放在正文的底部,以确保创建了尝试访问的元素

<html>
 <head>
  <title>My Sample HTML file</title>
 </head>
 <body>
  <div id="allMyParas" style="border-top: 1px #000 solid;">
<p id="firstParagraph">
    This is my first paragraph.
</p>
<p id="secondParagraph">
    This is my second paragraph.
</p>
<script language="javascript" type="text/javascript">

 var parasDiv = document.getElementById("allMyParas");
 var thirdPara = document.createElement("p");
 thirdPara.setAttribute("id", "thirdParagraph");
 parasDiv.appendChild(thirdPara);
 thirdPara.innerHTML = "This is my third paragraph.";
 parasDiv.style.borderBottom = "1px #000 solid";
 var parasInDiv = parasDiv.getElementsByTagName("p");
 for (var i = 0; i < parasInDiv.length; i++) {
  parasInDiv[i].style.backgroundColor = "lightgrey";

 }

</script>

我的示例HTML文件

这是我的第一段。

这是我的第二段。

var parasDiv=document.getElementById(“allMyParas”); var thirdPara=document.createElement(“p”); setAttribute(“id”,“thirdParagraph”); 帕拉斯迪夫·阿佩奇尔德(第三帕拉); thirdPara.innerHTML=“这是我的第三段。”; parasDiv.style.borderBottom=“1px#000实心”; var parasInDiv=parasDiv.getElementsByTagName(“p”); 对于(变量i=0;i
显示您的C代码可能也会有所帮助。你检查过浏览器的错误控制台了吗?@TimWolla现在就试试吧,谢谢!那么,为什么建议将Javascript代码放进去呢?这是过时的建议吗?@Blakeasd?我从没听说过。