Welcome 微信登录

首页 / 脚本样式 / JavaScript / JavaScript实现自动生成网页元素功能(按钮、文本等)

创建元素的方法:

  • 1、利用createTextNode()创建一个文本对象
  • 2、利用createElement()创建一个标签对象
  • 3、直接利用容器标签中的一个属性:innerHTML-----本质上改该标签容器中的“html代码”,不是我们认为的对象树的操作
详解代码:
<body><input type="button" value="创建并添加节点1" onclick="addNode1()"/><input type="button" value="创建并添加节点2" onclick="addNode2()"/><input type="button" value="创建并添加节点3" onclick="addNode3()"/><input type="button" value="remove节点1 " onclick="removenode()"/><input type="button" value="replaceNode节点2替换 " onclick="remove2()"/><!--1替换2,并且1没有保留--><input type="button" value="clone替换 " onclick="clone()"/><div id="div_id1">这是div模块--</div><div id="div_id2">必须好好地学习,这样才能让自己有很好的回报</div><div id="div_id3">好好干,加油↖(^ω^)↗</div><div id="div_id4">你懂得区域,实验区域</div> </body> 
方式一 :创建文本文档

<span style="font-size:18px;">function addNode1(){//1利用createTextNode()创建一个文本对象var text=document.createTextNode("这是修改的,创建的文档");//2获取div对象var node1=document.getElementById("div_id1");//添加成div对象的孩子node1.appendChild(text);}</span><span style="font-size:24px;"> </span> 
方式二:利用createElement()创建一个标签对象

function addNode2(){//1,利用createElement()创建一个标签对象var nn=document.createElement("input");nn.type="button"nn.value="创建的按钮";nn.target="_blank";//2,获得div对象var node2=document.getElementById("div_id2");//添加成div对象的孩子node2.appendChild(nn); } 
方式三:直接利用容器标签中的一个属性:innerHTML-----本质上改该标签容器中的“html代码”,不是我们认为的对象树的操作

function addNode3(){ var mm=document.getElementById("div_id3"); mm.innerHTML="<a href="http://www.baidu.com"><input type="button" value="新建的按钮"></a>"; } 
  • 删除节点
使用 removeNode 和 removeChild 从元素上删除子结点两种方法,通常采用第二种方法

function removenode(){var node =document.getElementById("div_id4"); // alert(node.nodeName);//DIV //自杀式 node.removeNode(true); //removeNode 从文档层次中删除对象。ie可以出现现象,一般不采用自杀式node.parentNode.removeChild(node);////通过父节点去删除它的孩子,一般常用alert("aa"); } 
  • 替换 没有保留替换的那个
function remove2(){var node1 =document.getElementById("div_id1");var node2 =document.getElementById("div_id2"); // node1.replaceNode(node2);//自杀式不通用 ////通过父节点去替换它的孩子:用node1去替换node2node1.parentNode.replaceChild(node1,node2);//object.replaceChild(oNewNode, oChildNode) } 
  • clone节点
function clone(){ var node1 =document.getElementById("div_id1"); var node2 =document.getElementById("div_id2"); var node1_2=node1.cloneNode(true);//false只能clone基本的,不会clone下面的其他子节点 //克隆一个对象,默认参数为false。参数为true时,连子节点一起克隆 node1.parentNode.replaceChild(node1_2,node2);} 
效果图:


全部的源代码:

<!DOCTYPE html> <html><head><title>DOM_operation.html</title><style type="text/css"> div{border:#00f solid 1px;width:200px;height:100px; }</style><script type="text/javascript"> //AAAA 增//方式一 创建文本文档 function addNode1(){//1利用createTextNode()创建一个文本对象var text=document.createTextNode("这是修改的,创建的文档");//2获取div对象var node1=document.getElementById("div_id1");//添加成div对象的孩子node1.appendChild(text); }function addNode2(){//1,利用createElement()创建一个标签对象var nn=document.createElement("input");nn.type="button"nn.value="创建的按钮";nn.target="_blank";//2,获得div对象var node2=document.getElementById("div_id2");//添加成div对象的孩子node2.appendChild(nn); }//直接利用容器标签中的一个属性:innerHTML-----本质上改该标签容器中的“html代码”,不是我们认为的对象树的操作 function addNode3(){ var mm=document.getElementById("div_id3"); mm.innerHTML="<a href="http://www.baidu.com"><input type="button" value="新建的按钮"></a>";} //BBBBBB-------删 //删除节点 使用 removeNode 和 removeChild 从元素上删除子结点两种方法,通常采用第二种方法 function removenode(){var node =document.getElementById("div_id4"); // alert(node.nodeName);//DIV //自杀式 node.removeNode(true); //removeNode 从文档层次中删除对象。ie可以出现现象,一般不采用自杀式node.parentNode.removeChild(node);////通过父节点去删除它的孩子,一般常用alert("aa"); } //替换 没有保留替换的那个 function remove2(){var node1 =document.getElementById("div_id1");var node2 =document.getElementById("div_id2"); // node1.replaceNode(node2);//自杀式不通用 ////通过父节点去替换它的孩子:用node1去替换node2node1.parentNode.replaceChild(node1,node2);//object.replaceChild(oNewNode, oChildNode) } function clone(){var node1 =document.getElementById("div_id1");var node2 =document.getElementById("div_id2");var node1_2=node1.cloneNode(true);//false只能clone基本的,不会clone下面的其他子节点//克隆一个对象,默认参数为false。参数为true时,连子节点一起克隆node1.parentNode.replaceChild(node1_2,node2); }</script></head> <body><input type="button" value="创建并添加节点1" onclick="addNode1()"/><input type="button" value="创建并添加节点2" onclick="addNode2()"/><input type="button" value="创建并添加节点3" onclick="addNode3()"/><input type="button" value="remove节点1 " onclick="removenode()"/><input type="button" value="replaceNode节点2替换 " onclick="remove2()"/><!--1替换2,并且1没有保留--><input type="button" value="clone替换 " onclick="clone()"/><div id="div_id1">这是div模块--</div><div id="div_id2">必须好好地学习,这样才能让自己有很好的回报</div><div id="div_id3">好好干,加油↖(^ω^)↗</div><div id="div_id4">你懂得区域,实验区域</div></body> </html> 
以上就是为大家分享如何通过JavaScript实现自动生成网页元素功能的方法,希望对大家的学习有所帮助。