-
插入节点 注意:node.insertBefore(newnode,childnode);
为 在指定的node节点 的指定的childnode已有子节点前 插入新的子节点newnode。
查看全部 -
注意:mynode.appendChild(newnode)
是在指定节点mynode的最后一个子节点 之后 添加一个新的子节点。
查看全部 -
注意while (x && x.nodeType!=1) 中的x,即 while (x!=null && x.nodeType!=1),当此条件不成立即False时,说明两种情况:
x为null,表示 var x=n.nextSibling 中的n已经没有nextSibling。
x.nodeType = 1,表示x为元素节点。
在这两种情况下,跳出while循环,返回x值。
查看全部 -
看示例代码,注意while与if的选择:
while语句属于循环语句,在判断是,如果条件为true,则会继续判断,直到false为止,即会进行多次判断(除非一开始条件就是错的)
if语句属于条件判断语句,如果条件是true,则继续执行,为false则跳出语句不执行,只会进行单次判断
***while与if语句的最大的相同点是:都有至少一步的判断。
最大的不同点是:if语句运行完毕后,接着运行下面的语句。而While中的执行语句运行完毕后,还要进行继续判断条件是否符合循环条件,根据判断的条件,返回执行语句或继续运行下面的程序。
查看全部 -
注意是3个parentNode,数的时候在代码上数,不要在画出的列表上数,容易遗漏
查看全部 -
Q: <input>标签是否必须放在<form>标签中,什么时候应该要<form>包裹,什么时候不用?
A: 不是必须的,单独使用没必要写在form标签内,但是假如你需要利用input标签收集用户信息并发送给后端,建议是写在form标签内
查看全部 -
node.lastChild
注意与:elementNode.childNodes[elementNode.childNodes.length-1] 是同样的效果。
查看全部 -
Q:为什么本节代码里的 <div>后面的javascript和<p>标签的空格不算1个节点?
A:不论是无内容的空白文本还是有内容的非空白文本,都算是文本。在<div>与<p>标签之间,就是一个文本节点,代码示例中的该文本节点内容为“javascript”,比如你在“javascript”前后增加文字或删除文字,只要是在标签之间,均作为一个文本节点存在,你更改的仅仅是该文本节点的nodeValue,并不会新增或减少节点。
查看全部 -
*** getAttribute()方法只能获取元素中 已存在/自定义 属性的属性值,而nodeName是每一个节点自带的静态属性而不是我们自己定义的属性。验证如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<p id="intro">我的课程</p>
<ul>
<li title="JS">JavaScript</li>
</ul>
<script type="text/javascript">
var Lists=document.getElementsByTagName("li");
document.write("1:"+ Lists[0].nodeName+"<br>");
document.write("2:"+ Lists[0].nodeValue+"<br>");
document.write("3:"+ Lists[0].nodeType+"<br>");
document.write("4:"+ Lists[0].getAttribute("title")+"<br>");
document.write("5:"+ Lists[0].getAttribute(Lists[0].nodeName)+"<br>");
document.write("6:"+ Lists[0].getAttribute(Lists[0].nodeValue)+"<br>");
document.write("7:"+ Lists[0].getAttribute(Lists[0].nodeType)+"<br>");
</script>
</body>
</html>
查看全部 -
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <p id="intro">我的课程</p> <ul> <li title="JS">JavaScript</li> </ul> <script type="text/javascript"> var Lists=document.getElementsByTagName("li"); document.write("1:"+ Lists[0].nodeName+"<br>"); document.write("2:"+ Lists[0].nodeValue+"<br>"); document.write("3:"+ Lists[0].nodeType+"<br>"); document.write("4:"+ Lists[0].getAttribute("title")+"<br>"); document.write("5:"+ Lists[0].getAttribute(Lists[0].nodeName)+"<br>"); document.write("6:"+ Lists[0].getAttribute(Lists[0].nodeValue)+"<br>"); document.write("7:"+ Lists[0].getAttribute(Lists[0].nodeType)+"<br>"); </script> </body> </html>
查看全部 -
注意:elementnode.getAttribute("title") 的引号,括号里若不加引号 代表括号里的是变量
查看全部 -
获取元素节点:getElementById()、getElementsByTagName()
获取元素节点某属性的值,返回值为string属性:elementnode.getAttribute("title")、elementnode.getAttribute("Name")、elementnode.getAttribute("Value")、
(注:elementNode:使用getElementById()、getElementsByTagName()等方法,获取到的元素节点。)
获取节点属性,主要三个重要属性(nodeName,nodeValue,nodeType)。可获取元素节点、属性节点、文本节点、文档节点的属性。
注:
-元素节点的 nodeName 与标签名相同
-属性节点的 nodeName 是属性的名称
-文本节点的 nodeName 永远是 #text
-文档节点的 nodeName 永远是 #document只有文本节点(text) / 注释节点(comment) / 属性节点(attr) 这三种节点类型才有nodeValue:
-元素节点的 nodeValue 是 undefined 或 null
-文本节点的 nodeValue 是文本自身
-属性节点的 nodeValue 是属性的值nodeName、nodeType 是只读的。
*** getAttribute()方法只能获取元素中 已存在/自定义 属性的属性值,而nodeName是每一个节点自带的静态属性而不是我们自己定义的属性。(待确认)
查看全部 -
元素节点:上图中<html>、<body>、<p>等都是元素节点,即标签。
文本节点:向用户展示的内容,如<li>...</li>中的JavaScript、DOM、CSS等文本。
属性节点:元素属性,如<a>标签的链接属性href="http://www.imooc.com"。
查看全部 -
if(hobby) 这个判断是 判断当前元素是否为空。例如输入7,就获取不到元素,因为复选框只有6个,如果元素不等于空则证明存在,存在就选中。
也可以写 if(hobby != null)
查看全部 -
getElementById()是寻找唯一id的节点元素,Element是单数,没有加s
getElementsByName()和getElementsByTagName()是寻找 name="" 属性和 <a><input><h2>等类似标签的集合,是一组值,返回的是数组(也有length属性)。所以这两个用的Elements是复数,加s 注意细节。
查看全部 -
转跳网站用location.assign("")来进行;
记住要先设置计时器自动开始的时间'
document.getElementById("xxx").value,用于文本框之类的取值
document.getElementById("xxx").innerHTML,用于本例中的这类,注意体会。
查看全部
举报