示例:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>DOM</title> </head> <body> <script type="text/javascript"> var data = [{ id: 1, name: "tom" }, { id: 2, name: "rose" }, { id: 3, name: "mark" }, { id: 4, name: "jack" }, { id: 5, "name": "lucy" }]; var ul = document.createElement("ul"); for(var i = 0; i < data.length; i++) { var li = document.createElement("li"); li.innerHTML = data[i].name; var span=document.createElement("span"); span.innerText=" 删除"; span.setAttribute("data-id",data[i].id); li.appendChild(span); span.onclick=function(){ var id=this.getAttribute("data-id"); for(var i=0;i<data.length;i++){ if(data[i].id==id){ data.splice(i,1); //从data数组的第i位置开始删除1个元素 } } this.parentNode.parentNode.removeChild(this.parentNode); console.log("还有:"+data.length+"个对象"+JSON.stringify(data)); } ul.appendChild(li); } document.body.appendChild(ul); </script> </body> </html>
结果:
4.6、属性节点attributes
attributes |
获取所有标签属性 |
getAttribute() | 获取指定标签属性 |
setAttribute() | 设置指定标签属 |
removeAttribute() | 移除指定标签属 |
var s = document.createAttribute("age") s.nodeValue = "18" |
创建age属性 设置属性值为18 |
示例:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>DOM</title> </head> <body> <input id="txtName" type="text" /> <script> var txtName=document.getElementById("txtName"); txtName.setAttribute("title","这是txtName"); //设置属性 console.log(txtName.getAttribute("title")); //获得属性 //创建一个属性 var placeholder=document.createAttribute("placeholder"); placeholder.nodeValue="请输入姓名"; //设置属性值 txtName.setAttributeNode(placeholder); //添加属性 </script> </body> </html>
结果:
4.7、文本节点TEXT
innerText | 所有的纯文本内容,包括子标签中的文本 |
outerText | 与innerText类似 |
innerHTML | 所有子节点(包括元素、注释和文本节点) |
outerHTML | 返回自身节点与所有子节点 |
textContent | 与innerText类似,返回的内容带样式 |
data | 文本内容 |
length | 文本长度 |
createTextNode() | 创建文本 |
normalize() | 删除文本与文本之间的空白 |
splitText() | 分割 |
appendData() | 追加 |
deleteData(offset,count) | 从offset指定的位置开始删除count个字符 |
insertData(offset,text) | 在offset指定的位置插入text |
replaceData(offset,count,text) | 替换,从offset开始到offscount处的文本被text替换 |
substringData(offset,count) | 提取从ffset开始到offscount处的文本 |