JavaScript DOM编程艺术-学习笔记(第三章、第四章)
第三章:
1.js的对象分为三种:①用户自定义对象 ② 内建对象(js提供的对象) ③宿主对象(js寄宿的环境-浏览器,提供的对象)
2.文档是由节点组成的集合,即dom树,html元素是根元素,是唯一一个没有被其它元素包含的元素。
3.元素节点并非直接包含文本节点,例如:<ul><li>你好</li><ul> ul元素并没有直接包含文本元素
4.获取元素的方法:
①getElementById()
②getElementsByTagName () 独特的用法:docuemnt.getElementsByTagName("*") 用于获取某个元素内的所有标签的数量。类似于jquery的size()
题外话:换行的时候,总想ctrl+s 。哎,已经成为习惯了吗。
③getElementsByClassName() (ie8以及以下版本不支持)
书中给出了一个自定义的getElementByClassName方法:
function getElementsByClassName(node,classname){
if(node.getElementsByClassName){
return node.getElementsByClassName(classname);
}else{
var ele = node.getElementsByTagName("*");
var arr = [];
for (var i = 0; i < ele.length; i++) {
if(ele[i].className == classname){
arr.push(ele[i]);
}
}
return arr;
}
}
5.小知识点:① 元素.className() 获取元素的名称 ②if(sm != null) 等同于if(sm)
6.在本章最后的部分,有说到,setAttribute修改的值,不会出现在源码中。可是自己的代码并没有那种效果。还有对于这种现象的解析,让我觉得说的是ajax。。。。。。。???
第四章:
1.本章介绍 了一个例子:类似于切换头像的效果,也可以说是已一个简单的选项卡效果:

2.胡思乱想:① 0级dom-原始dom ②1级dom - 标准dom ③2,3级dom-标准化基础上的交互式dom
3.小知识点: on-click="return false;" 等同于 : 按钮没有被点击
4.节点属性:
①childNodes 获取某元素的所有子节点(包含元素节点,属性节点,文本节点),而不仅仅只是元素节点。有的浏览器会把换行符解释成一个文本节点,同时很多方法只能用于元素节点,不能用于文本节点
②nodeType(1-元素节点 , 2- 属性节点,3-文本节点)
③nodeValue 无法直接获取元素的文本。 元素的文本 = 元素的第一个子节点的nodeValue值(p.childNodes[0].nodeValue) 类似于jquery的text()方法
5.setAttribute 相当于 jquery中的css()和attr()方法。两者的区别是:attr()方法可以获取和修改html标签中的任意属性。而css()只能获取和修改 属性style的值
JavaScript DOM编程艺术-学习笔记(第三章、第四章)的更多相关文章
- JavaScript DOM编程艺术-学习笔记(第八章、第九章)
第八章 1.小知识点: ①某些浏览器要根据DOCTYPE 来决定页面的呈现模式(标准模式 / 怪异模式--也称兼容模式): 兼容模式意味着浏览器要模仿老一辈的浏览器的怪异行为,来让老站点得到运行,并让 ...
- JavaScript DOM编程艺术学习笔记(一)
嗯,经过了一周的时间,今天终于将<JavaScript DOM编程艺术(第2版)>这本书看完了,感觉受益匪浅,我和作者及出版社等等都不认识,无意为他们做广告,不过本书确实值得一看,也值得推 ...
- JavaScript DOM编程艺术-学习笔记
发现基础不是很好,补习一下.37买了2本书(dom编程和高级程序设计). 以前读书总是自己勾勾画画,有点没意思.现在写下来,说不定会成为传世经典.哈哈...........随便扯扯淡. 第一天(201 ...
- 【干货】JavaScript DOM编程艺术学习笔记1-3
从7月29号到8月8号,断断续续地看完了这本书,做了部分实践联系.总体感觉本书真的只能算是个入门,学完之后看到库的那一章才感觉是个大坑,实践中大部分应该都是用的现成的库吧,所以还要重新学习一个库,但是 ...
- JavaScript DOM编程艺术学习笔记-第二章JavaScript语法
一.JavaScript示例 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
- JavaScript DOM编程艺术学习笔记-第一章JavaScript简史
一,JavaScript的起源 JavaScript是Netscape与Sun公司合作开发,它是一种脚本语言,通常只能通过Web浏览器去完成一些操作.JavaScript为程序员提供了一些操控Web浏 ...
- 【干货】JavaScript DOM编程艺术学习笔记10-12【完】
十.用JavaScript实现动画效果 鼠标放到链接上,每次只显示图片的一小部分,加快加载速度. js: function prepareSlideshow(){ //对象检测 if(!documen ...
- JavaScript DOM编程艺术-学习笔记(第五章、第六章)
第五章: 1.题外话:首先大声疾呼,"js无罪",有罪的是滥用js的那些人.js的father 布兰登-艾克,当初为了应付工作,10天就赶出了这个js,事后还说人家js是c语言和s ...
- 【干货】JavaScript DOM编程艺术学习笔记4-6
四.案例研究:JavaScript图片库 js: function showPic(whichpic){ //取得链接 var source=whichpic.getAttribute("h ...
随机推荐
- hdu1205(类似 分布垃圾数列)
Problem Description A Fibonacci sequence is calculated by adding the previous two members the sequen ...
- JMX操作ActiveMQ(2)
默认情况下,ActiveMQ使用useJmx后,jmx的url为 service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi 这时,jmx的MBean se ...
- Dynamics 365 for Team Members Description
Dynamics 365 for Team Members, Business edition The Dynamics 365 for Team Members, Business edition ...
- 给你的git仓库瘦身
很久没有写博客了,最近遇到了一个git问题,比较典型,记录下来与大家分享. 我们使用git版本控制的时候享受了很多便利,不管是代码合并,分支提供给我们的并发,但我们也往往忽略了每次提交之后在我们本地项 ...
- eclipse安装svn插件的多种方式
方法一:在线安装 1.打开HELP->MyEclipse Configuration Center.切换到SoftWare标签页. 2.点击Add Site 打开对话框,在对话框Name输入Sv ...
- 如何保存PDF、Word和Excel文件到数据库中
在项目中,有时候我们很需要把PDF.Word和Excel文档等等上传到数据库,以便日后使用.今天这篇文章向大家讲解如何将这些文件保存到数据库的. 详细步骤 第一步:打开数据库,单击新建查询,创建一个名 ...
- 人机ai五子棋 ——五子棋AI算法之Java实现
人机ai五子棋 下载:chess.jar (可直接运行) 源码:https://github.com/xcr1234/chess 其实机器博弈最重要的就是打分,分数也就是权重,把棋子下到分数大的地方, ...
- centos6.8 搭建nginx+uwsgi+Flask
1.安装 yum install nginx -y pip3 install uwsgipip3 install Flask 2.uwsgi配置(保存/etc/uwsgi.ini,run:uwsgi ...
- IOS数据库操作SQLite3使用详解(转)
iPhone中支持通过sqlite3来访问iPhone本地的数据库.具体使用方法如下1:添加开发包libsqlite3.0.dylib首先是设置项目文件,在项目中添加iPhone版的sqlite3的数 ...
- wpf ProgressBar使用
wpf progressBar使用起来有些麻烦,直接设置value的值还不行 而是通过委托来执行setValue方法 //Create a Delegate that matches the ...