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. LeetCode174-Dungeon Game-数组,动态规划

    题目描述 The demons had captured the princess (P) and imprisoned her in the bottom-right corner of a dun ...

  2. Linux (麒麟)系统 重启后无法登陆进图形界面

    登录图形化界面的时候,会显示GNOME电源管理器没启动等提示信息,会一直卡在登录界面 在启动的时候按ESC或者在登录界面crtl+alt +f3 进入字符终端界面 查看物理存储空间占用信息,可能会有一 ...

  3. 本地连接属性:Internet协议版本4(TCP/IPv4)打开闪退解决办法

    1.命令窗口配置网络连接指定IP netsh interface ip set address "本地连接" static IP地址 子网掩码 默认网关 例:netsh inter ...

  4. kafka可视化客户端工具Kafka Tool

    1.下载 下载地址:http://www.kafkatool.com/download.html 2.安装 根据不同的系统下载对应的版本,我这里kafka版本是1.1.0,下载kafka tool 2 ...

  5. NetSec2019 20165327 Exp1 PC平台逆向破解

    NetSec2019 20165327 Exp1 PC平台逆向破解 一.实践目标 本次实践的对象是一个名为pwn1(实验中用的 是5327pwnx)的linux可执行文件. 该程序正常执行流程是:ma ...

  6. java中的JSON数据转换方法fastjson

    1 maven工程引入fastjson <?xml version="1.0" encoding="UTF-8"?> <project xml ...

  7. Java程序设计的第一次作业1

  8. D - Dice Game (BFS)

    A dice is a small cube, with each side having a different number of spots on it, ranging from 1 to 6 ...

  9. 可迭代对象 TO 迭代器

    可迭代对象并不是迭代器,只是支持迭代.可被for循环遍历的对象,比如list,dict ,tuple ,string都是可迭代对象 那既然支持迭代,那要如何用迭代替换for循环呢? 内置函数 iter ...

  10. CodeIgniter框架解析

    转载于:https://www.cnblogs.com/xiaoxiaoqingyi/p/6901654.html 转载仅为以后自己学习. 业余花了点时间看看CodeIgniter框架(简称CI),C ...