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去替换node2
   node1.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去替换node2
   node1.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实现自动生成网页元素功能的方法,希望对大家的学习有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索javascript删除元素
javascript添加元素
javascript 删除元素、javascript 隐藏元素、javascript 点击按钮、javascript获取子元素、javascript 获取元素,以便于您获取更多的相关知识。

时间: 2024-11-08 18:11:49

JavaScript实现自动生成网页元素功能(按钮、文本等)_javascript技巧的相关文章

禁用backspace网页回退功能的实现代码_javascript技巧

实例如下: <script language="JavaScript"> document.onkeydown = check; function check(e) { var code; if (!e) var e = window.event; if (e.keyCode) code = e.keyCode; else if (e.which) code = e.which; if (((event.keyCode == 8) && //BackSpac

javascript通过className来获取元素的简单示例代码_javascript技巧

示例如下: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv=

JavaScript动态改变HTML页面元素例如添加或删除_javascript技巧

可以通过JavaScript动态的改变HTML中的元素 向HTML中添加元素 首先需要创建一个标签,然后向该标签中添加相应的内容,然后将创建好的标签添加到相应的位置. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="ht

javascript根据时间生成m位随机数最大13位_javascript技巧

根据时间生成m位随机数,最大13位随机数,并且不能保证首位不为0 function ran(m) { m = m > 13 ? 13 : m; var num = new Date().getTime(); return num.toString().substring(13 - m); } console.log(ran(5)); 根据Math的random函数生成的随机数截取m位,生成的随机数最大不超过16位,能保证首位不为0 function rand(m) { m = m > 16 ?

javascript firefox 自动加载iframe 自动调整高宽示例_javascript技巧

iframe 自动获取onload高宽 复制代码 代码如下: function AutoResize(iframe) { //firefox if(iframe.contentWindow) { iframe.height = iframe.contentWindow.document.documentElement.scrollHeight; iframe.width = iframe.contentWindow.document.documentElement.scrollWidth; }

JavaScript实现倒计时跳转页面功能【实用】_javascript技巧

这里给大家提供一个好用的JS写的倒计时页面,就像一些网站上点提交后出现的倒计时页面类似. 页面代码简单,直接拷贝就能运行,页面可以自己美化下. <!--这里定义倒计时开始数值--> <span id="totalSecond">5</span> <!--定义js变量及方法--> <script language="javascript" type="text/javascript"> v

javascript实现的一个带下拉框功能的文本框_javascript技巧

有时我们需要一个可选的下拉框来选取内容,但是但是又有可以自定义输入的需求.对于这种需求,大部分网站使用的都是一个下拉框和一个 input text ,并列或分行给出选择.那么,我们希望它看上去像一个可以输入也可以选择的下拉框,那该如何做呢? 其实我们可以通过 css position 定位及少许的 javascript 代码,模拟出来这种效果. 复制代码 代码如下: <!DOCTYPE html><html><head> <title>可编辑可选择的下拉框&

封装了一个自动生成渐变字的JS类(clip)_javascript技巧

CSS+js多彩渐变字使用说明 首先在HTML页面中引入clip.js,然后给需要渐变效果的HTML元素(比如SPAN)添加name属性和rel属性,格式如下: <span name="clip:g" rel="#00ffff-#000000">蓝黑渐变文字</span> name属性作为渐变标示,name值不正确,将不会产生效果: rel值提供头和尾的颜色,以16进制颜色代码为准,格式为"起始颜色-末端颜色",其他格式不

用javascript实现自动输出网页文本_javascript技巧

用javascript实现自动输出网页文本,用了setTimeout(),递归和String.substring();两个函数实现此功能,下面把实现代码分享给大家. 做出的效果就像是有一个打字员在打字. <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content=&q