Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/35.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 使用for循环中的href将节点替换为锚点_Javascript_Css_Html_Href - Fatal编程技术网

Javascript 使用for循环中的href将节点替换为锚点

Javascript 使用for循环中的href将节点替换为锚点,javascript,css,html,href,Javascript,Css,Html,Href,理论上,该代码应将第1-4段写入到www.bing.ca的链接中,并将段落编号作为文本。几天来,我一直在努力寻找错误,但我失败得很惨。任何帮助都将不胜感激。这是我有史以来的第一个问题,所以如果我能把它做得更好,以备将来参考,我也会很感激的。多谢各位 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title></title> <scr

理论上,该代码应将第1-4段写入到www.bing.ca的链接中,并将段落编号作为文本。几天来,我一直在努力寻找错误,但我失败得很惨。任何帮助都将不胜感激。这是我有史以来的第一个问题,所以如果我能把它做得更好,以备将来参考,我也会很感激的。多谢各位

代码如下:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8"/>
  <title></title>
  <script>
  window.onload = function() {
     var innerDiv = document.getElementById("innerDiv");
     var newDiv = document.createElement("div");
     for (var i = 0; i < innerDiv.childNodes.length; i++) {
        var anchor = 
           newDiv.appendChild(document.createElement("a"));
        anchor.setAttribute("href", "http://www.bing.ca");
        anchor.text = innerDiv.childNodes[i].textContent;
        newDiv.appendChild(document.createElement("br"));
}
innerDiv.replaceNode(newDiv);
}
</script>
</head>
<body>
   <div id="outerDiv">
      <p class='mainPara'>Main Paragraph</p>
   <ul>
      <li>First List Item</li>
      <li>Second List Item</li>
      <li>Third List Item</li>
      <li>Fourth List Item</li>
   </ul>
   <div id="innerDiv">
      <p class='subPara' id='P1'>Paragraph 1</p>
      <p class='subPara' id='P2'>Paragraph 2</p>
      <p class='subPara' id='P3'>Paragraph 3</p>
      <p class='subPara' id='P4'>Paragraph 4</p>
   </div>
   <table>
   </table>
   <input type="text"/><input type="submit" value="Submit!">
</body>
</html>
请注意,replaceNode仅适用于IE。也许可以改用innerHTML

var innerDiv=document.getElementByIdinerDiv; var newDiv=document.createElementdiv; 对于var i=0;i主要段落

第一个清单项目 第二个清单项目 第三个清单项目 第四个清单项目 第1段

第2段

第3段

第4段


让你的下一个问题变得更好的一个重要方法是跳过亵渎。谢谢。我正要这么做,是的!对对就这样!你真是个奇迹!我一直在反复讨论这个代码。我感谢你的意见。问题是我在用Chrome编写代码并使用replaceNode。哇!看起来要花一些时间才能弄清楚哪些方法只适用于某些浏览器。天哪,没问题。尽可能地投票并接受答案。浏览器兼容性不再是过去的问题。当您了解了javascript的基本知识后,看看这个库,它将缓解许多跨浏览器的难题,只需确保您首先了解javascript的基本知识。最后了解一些方便的工具:Chrome开发者工具按f12,IE开发者工具f12和firefox FireBug插件inWow。谢谢你,杰维。F12现在是我新结识的朋友。我想投票,但显然我的名声还不够好。如果我能,我会的!