js学习12-《JS DOM 编程艺术》笔记

学习了下《JS DOM 编程艺术》,做个学习总结:
1.字符串中放单引号双引号:
建议:
字符串中放单引号,则用双引号包含字符串

 1 var s1="It‘s my doy"; 

字符串中放双引号,则用单引号包含字符串
 1 var s2=‘He said "hi!" ‘; 
其他使用\进行转义

2.==和===
=== :严格比较。不仅比较值,还比较类型
== :不严格比较,转换类型一致比较

3.JS语言里对象的三种类型
3.1内建对象:javascript提供的对象 Math Array
3.2宿主对象:浏览器对象。如document,window
3.3用户自定义对象:..

4.获取文档中的对象
 1 document.getElementById("p1");   

 1 document.getElementByTagName("input");  

 1 document.getElementByClassName("classname1 classname2");//备注:此时name顺序不重要,可乱序 

5.获取某对象属性
<html lang="zh-cn"></html>
eg:

  var html=document.getElementsByTagName("html");//html为数组 

  html[0].getAttribute("title");//此时结果为null,代表没有值 

  html[0].title;//此时结果为”“;可能存在兼容问题,为旧版本web文档处理方式 

 

6.event事件返回false,可使默认行为不被触发
eg:

1 <a href="www.baidu.com" onclick="return false">onclick</a>//此时点击该链接,跳转到百度页面的事件不会触发

7.获取某节点的子节点 

var child=document.getElementsByTagName("body")[0].childNodes; 

child.length;

child[0].nodeType;//返回结果为1 2 3 的数字。其中:1-元素节点,2-属性节点,3-文本节点 

 

8.获取某文本节点的值
element.nodeValue;
eg:

 1 <body>
 2 ********test nodeType,nodeValue*******
 3 <p>hello jermy</p>
 4 <script type="text/javascript">
 5 function tag(tagname){
 6 return document.getElementsByTagName(tagname)[0];
 7 }
 8 var p1=tag("p");
 9 var t1=p1.firstChild;//等价于p1.childNodes[0]
10 document.write("p1.nodeType="+p1.nodeType+";p1.nodeValue="+p1.nodeValue+"<br/>");
11 document.write("t1.nodeType="+t1.nodeType+";t1.nodeValue="+t1.nodeValue);
12 </script>
13 </body>

 

9.伪协议(备注:此方法不建议使用)
<a href=“javascript:prop()” ></a>//此处点击a链接,在支持伪协议的浏览器直接运行,不支持伪协议浏览器将报错。支持伪协议但是被用户禁用js的浏览器中将do nothing。

网站设计关注点:平稳退化


11.换行string

 1 document.getElementById("demo").innerHTML = "Hello \ 2 Dolly!"; 

 

12.自启动:

 1 (function () { 2 document.getElementById("demo").innerHTML = "Hello! I called myself"; 3 }()); 

或者:

 1 (function () { 2 document.getElementById("demo").innerHTML = "Hello! I called myself"; 3 })(); 

13.闭包的例子

 1 <!DOCTYPE html>
 2 <html>
 3 <body>
 4 
 5 <p>Counting with a local variable.</p>
 6 
 7 <button type="button" onclick="myFunction()">Count!</button>
 8 
 9 <p id="demo">0</p>
10 
11 <script>
12 var add = (function () {
13 var counter = 0;
14 return function () {return counter += 1;}
15 })();
16 
17 function myFunction(){
18 document.getElementById("demo").innerHTML = add();
19 }
20 </script>
21 
22 </body>
23 </html>

 

闭包结果见图片

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。