DOM

1.dom:简单理解为文档对象模型<==>节点树

2.宿主对象:浏览器提供的对象—>document对象

3.

  html标签为树顶点元素

  head body为html子元素以此类推个节点元素的父子关系

4.节点分类:

  元素节点:即标签元素对象,可用该元素节点调用内部元素属性

  文本节点:<p>内部包含的文本内容为文本节点

  属性节点:标签内的属性以及属性值为属性节点 例如<p title="a">,title=“a”是属性节点

  css复习:class属性: .class{font-style:xxx}

      id属性: #id{font-style:xxx}

  

5.获取元素

  (1)getElementById:获取/返回id对应的元素对象

     document.getElementById("id")

  (2)getElementsByTagName:筛选出同类标签的节点,返回一个数组对象,数组内对应相应标签的元素节点/元素对象

    document.getElementsByTagName("tag")

    支持通配符* 例如查看多少个元素节点:document.getElementByTagName("*").length;

    查看某id对应元素内部有多少元素节点(id为shit的节点B下面还有多少节点元素)

    【1】 a = document.getElementById("shit")

    【2】 a.getElementsByTagName("*")

  (3)getElementsByClassName(classname1 [classname2、classname3.....]空格分隔):获取/取得classname对应的元素节点的对象数组

    多个类名之间的匹配取交集,与顺序无关?????

    支持与document.getElementById混用:

      【1】a = document.getElementById('id_name');获取id为id_name的元素节点对象a

      【2】classname_arry = a.getElementByClassName("class_name");在元素节点对象a内,查找,并返回class为class_name的元素节点对象的数组

5.getAttribute(属性名)

  object(元素节点对象).getAttribute(属性名):用于查看该属性值

  例如:a = document.getElementsByTagName('tag_name');查找tag_name的元素节点对象数组

       a[0].getAttribute('title')查看该对象数组中第一个对象的名为title的属性的值(如果该没有该属性,则返回Null)

6.setAttribute("属性名","设置的值")

  object(元素节点对象).setAttribute(“属性名”,“设置的值”):用于修改该属性值,如果该属性没有,则添加该属性并且赋值

  注意:setAttribute修改的属性,在源码中是查看不到的;

     因为dom工作模式:先加载文档静态内容,即现呈现原有源码,然后再动态添加,即添加后属性不会传回服务器,因而无法从源码中看到改变!!!!!

  

dom编程艺术笔记2--第三章的更多相关文章

  1. javascript dom编程艺术笔记第三章:DOM操作的5个基本方法

    JavaScript的 DOM操作,主要是对DOM这三个字母中D.O.M的操作.D代表的是document(文档),即我们可以使用javascript对文档进行操作,O代表的是object(对象),对 ...

  2. dom编程艺术笔记1--第二章

    第二章语法部分: 1.js注释:<!-- XXXXX 而“-->”这部分js会认为是注释内容的一部分 2.var 声明变量 不用声明变量类型 3.声明使用一个数组语法:var object ...

  3. javascript dom 编程艺术笔记 第四章:图片库

    首先先建立一个html文件,建立一个图片库 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...

  4. JavaScript DOM编程艺术 笔记(三)函数

    函数function 是在你的代码里随时调用的语句 每个函数是个短小的脚本,arguments,传递的参数 function name(arguments){ statements; } functi ...

  5. JavaScript DOM编程艺术 笔记(一)

    探测浏览器品牌版本代码-----浏览器嗅探 代码 JavaScript==ECMAScript java几乎可以部署在任何环境,js只应用于web浏览器 API是一组得到各方面共同认同的基本约定(元素 ...

  6. javascript dom编程艺术笔记之图片库的改进

    dom的操作要遵守的原则 1.平稳退化 2.分离javascript 3.向后兼容 4.性能考虑 改进后的显示图片方法 function showpic(whichpic){ if(!document ...

  7. JavaScript DOM编程艺术 笔记(四)

    DOM document   object model(map) 家谱树---节点树 父 子  兄弟 元素节点  <div> 文本节点  内容 属性节点   value  src getE ...

  8. java并发编程实战笔记---(第三章)对象的共享

    3.1 可见性 synchronized 不仅实现了原子性操作或者确定了临界区,而且确保内存可见性. *****必须在同步中才能保证:当一个线程修改了对象状态之后,另一个线程可以看到发生的状态变化. ...

  9. asp.net mvc 4 高级编程学习笔记:第三章 视图(2)

    页面布局 asp.net MVC中提供了布局的支持,默认情况下才布局文件保存到 /View/Shared/目录下的_Layout.cshtml,View目录有个_ViewStart.cshtml文件, ...

随机推荐

  1. [译]RabbitMQ教程C#版 - 主题

    先决条件 本教程假定 RabbitMQ 已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需要调整连接设置. 从哪里获得帮助 如果您在阅读本教程时遇到困难, ...

  2. 【BUAA-OO】第二单元作业总结

    第二单元作业总结 ——电梯恐惧症患者的极限自救 一.   第一次作业程序分析 1.     设计策略简略分析 线程:主线程.输入线程和电梯线程,另有一个持有请求队列的调度器,一个对输入进行处理的Req ...

  3. Lintcode489-Convert Array List to Linked List-Easy

    489. Convert Array List to Linked List Convert an array list to a linked list. Example Example 1: In ...

  4. EF的优缺点

    优点: 1.简洁的Linq to Sql语句大大提高了开发人员的效率,不要再写复杂的sql语句: 2.不再需要再管应用程序如何去连接数据库: 3.EF可以用作用于数据服务和OData Service的 ...

  5. Error: EACCES: permission denied, mkdir '......node-sass/build'错误解决方案

    安装node-sass时出现一下错误: gyp ERR! configure error gyp ERR! stack Error: EACCES: permission denied, mkdir ...

  6. 决策树算法原理(CART分类树)

    决策树算法原理(ID3,C4.5) CART回归树 决策树的剪枝 在决策树算法原理(ID3,C4.5)中,提到C4.5的不足,比如模型是用较为复杂的熵来度量,使用了相对较为复杂的多叉树,只能处理分类不 ...

  7. python+selenium的web自动化测试之一(手工执行)

    环境 Windows 前提: 1. python已正常安装 2. selenium已正常安装. 如果没安装,会报:ImportError: No module named 'selenium' (参考 ...

  8. centos中redis安装

    一.wget http://download.redis.io/releases/redis-4.0.2.tar.gz 二.tar xzf redis-4.0.2.tar.gz cd redis-4. ...

  9. sudo命令

    su命令 switch user的缩写, 意为切换至指定用户执行命令 常用选项 -c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份: -f或——f ...

  10. [springMvc] 源码分析笔记(二)

    1.SpringMvc 中核心Servlet的继承结构图 2.HttpServletBean public abstract class HttpServletBean extends HttpSer ...