<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <style type="text/css"> #div{ width:200px; height:200px; background-color:green; } </style> </head> <body> <p name="pn">哈哈</p> <p name="pn">呵呵</p> <p name="pn">嘿嘿</p> <p name="pn">嘻嘻</p> <a id="aid" title="a标签的title属性">超链接</a><br/> <!-- 列表 --> <ul> <li>Hello</li> <li>Java</li> <li>Script</li> </ul> <div id="div"> 我是一个div。 <p id="pid">div中的p节点</p> </div> <hr/> <script type="text/javascript"> function demo() { var pn = document.getElementsByName("pn"); // 通过元素的name属性获取到该元素; var p = document.getElementsByTagName("p"); // 通过元素的标签名获取到该元素; document.write("pn.length = " + pn.length + "<br/>"); // 获取到的是满足条件的所有元素的集合; document.write("p.length = " + p.length + "<br/>"); document.write(pn[0].innerHTML + "<br/>"); document.write(pn[1].innerHTML + "<br/>"); document.write(pn[2].innerHTML + "<br/>"); document.write(pn[3].innerHTML + "<br/>"); document.write(p[4].innerHTML + "<br/>"); document.write("<hr/>"); } demo(); function getAttr() { var aNode = document.getElementById("aid"); // 根据id获取元素; var attr = aNode.getAttribute("title"); // 根据元素的属性名称获取属性的值; var aid = aNode.getAttribute("id"); document.write("attr = " + attr + "<br/>"); document.write("aid = " + aid + "<br/>"); document.write("<hr/>"); } getAttr(); function setAttr() { var aNode = document.getElementById("aid"); aNode.setAttribute("title", "a标签的新属性"); // 设置元素的属性(元素的名称,元素的属性) var attr = aNode.getAttribute("title"); document.write("attr = " + attr + "<br/>"); document.write("<hr/>"); } setAttr(); function getChild() { var node = document.getElementsByTagName("ul"); var nodeChild = node[0].childNodes; // 获取子节点一定要写父节点的下标,一个父节点可以有多个子节点。 // nodeChiled的长度为7,是因为<ul>和<li>标签后面的空格也算。 document.write("nodeChild的长度 = " + nodeChild.length + "<br/>"); // nodeType:节点类型;(1:元素节点;2:属性节点;3:文本内容;等等) document.write("节点类型:" + nodeChild[5].nodeType + "<br/>"); document.write("标签中的内容:" + nodeChild[5].innerHTML + "<br/>"); document.write("<hr/>"); } getChild(); function getParent() { var node = document.getElementById("pid"); // 根据id获取到元素; var nodeParent = node.parentNode; // 获取元素的父节点; document.write("父节点名称:" + nodeParent.nodeName + "<br/>"); document.write("父节点的id:" + nodeParent.id + "<br/>"); document.write("<hr/>"); } getParent(); function createElement() { var body = document.body; // 获取需要添加子节点的父节点; var input = document.createElement("input"); // 创建新的节点; input.type = "button"; // 设置新节点的属性; input.value = "按钮"; body.appendChild(input); // 在指定的父节点下添加子节点; document.write("<hr/>"); } createElement(); function insertNode() { var div = document.getElementById("div"); var pid = document.getElementById("pid"); var node = document.createElement("p"); // 创建一个p节点; node.innerHTML = "我是新创建的p节点"; div.insertBefore(node, pid); } insertNode(); function removeNode() { var div = document.getElementById("div"); div.removeChild(div.childNodes[1]); // 移除div的第一个子元素; } removeNode(); function getSize() { var width = document.documentElement.offsetWidth; // 获取网页宽度;offsetWidth:不包括滚动条; var height = document.body.offsetHeight; // 获取网页高度;scrollWidth:包括滚动条; document.write("网页宽度:" + width + "<br/>"); document.write("网页高度:" + height + "<br/>"); document.write("<hr/>"); // 为了兼容浏览器,可以写成: var width2 = document.documentElement.offsetWidth || document.body.offsetHeight; document.write("网页宽度:" + width2 + "<br/>"); } getSize(); </script> </body> </html>