JavaScript中功能自动生成网页元素且可以增删改克隆(按钮,文本等)

来源:互联网 发布:搭配h5游戏开发的js 编辑:程序博客网 时间:2024/05/31 19:13

创建元素的方法:

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>


1 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 电脑打不开pdf格式的文件怎么办 pdf格式在电脑上打不开怎么办 zip压缩的时候空间不足怎么办 电子发票填抬头错了怎么办 发票写错一个字怎么办 普票税率开错了怎么办 税率开错为17了怎么办 电子发票抬头错了怎么办 发票抬头错了一个字怎么办 5月税率开错了怎么办 如果发票是假的怎么办 发票收款人名字写错了怎么办 医院发票名字写错了怎么办 购买方发票联丢失怎么办 市中区超市办理发票怎么办 发票购买薄丢了怎么办 发票领用簿丢了怎么办 摩托车证扣12分怎么办 初中孩孑想扩展单词量怎么办 恒安保险倒闭了怎么办 小麦收割机卸粮筒总是转怎么办 非牛顿体结块了怎么办 非牛顿流体硬了怎么办 玩具枪子弹打到眼睛怎么办 杭州磨床7130噪音大怎么办 步兵太苦还有一年怎么办 检法事业编怎么办最新 河北省事业单位改企编制怎么办 梦飞去虎牙锐雯怎么办 蚂蚁借呗还款钱没到账怎么办 蚂蚁借呗没有按时还款怎么办 新装的win7没有网卡驱动怎么办 3d电影没眼睛怎么办 看vr手机发烫变卡怎么办 vr眼镜头晕想吐怎么办 程序员年龄大了失业怎么办 事业人员编制在机关任职改革怎么办 老公出轨死不承认怎么办 2017年军自考毕业证怎么办 大腿酸痛肌肉萎缩怎么办一 习惯不了军训一起洗澡怎么办