dom编程艺术笔记2--第三章
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--第三章的更多相关文章
- javascript dom编程艺术笔记第三章:DOM操作的5个基本方法
JavaScript的 DOM操作,主要是对DOM这三个字母中D.O.M的操作.D代表的是document(文档),即我们可以使用javascript对文档进行操作,O代表的是object(对象),对 ...
- dom编程艺术笔记1--第二章
第二章语法部分: 1.js注释:<!-- XXXXX 而“-->”这部分js会认为是注释内容的一部分 2.var 声明变量 不用声明变量类型 3.声明使用一个数组语法:var object ...
- javascript dom 编程艺术笔记 第四章:图片库
首先先建立一个html文件,建立一个图片库 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...
- JavaScript DOM编程艺术 笔记(三)函数
函数function 是在你的代码里随时调用的语句 每个函数是个短小的脚本,arguments,传递的参数 function name(arguments){ statements; } functi ...
- JavaScript DOM编程艺术 笔记(一)
探测浏览器品牌版本代码-----浏览器嗅探 代码 JavaScript==ECMAScript java几乎可以部署在任何环境,js只应用于web浏览器 API是一组得到各方面共同认同的基本约定(元素 ...
- javascript dom编程艺术笔记之图片库的改进
dom的操作要遵守的原则 1.平稳退化 2.分离javascript 3.向后兼容 4.性能考虑 改进后的显示图片方法 function showpic(whichpic){ if(!document ...
- JavaScript DOM编程艺术 笔记(四)
DOM document object model(map) 家谱树---节点树 父 子 兄弟 元素节点 <div> 文本节点 内容 属性节点 value src getE ...
- java并发编程实战笔记---(第三章)对象的共享
3.1 可见性 synchronized 不仅实现了原子性操作或者确定了临界区,而且确保内存可见性. *****必须在同步中才能保证:当一个线程修改了对象状态之后,另一个线程可以看到发生的状态变化. ...
- asp.net mvc 4 高级编程学习笔记:第三章 视图(2)
页面布局 asp.net MVC中提供了布局的支持,默认情况下才布局文件保存到 /View/Shared/目录下的_Layout.cshtml,View目录有个_ViewStart.cshtml文件, ...
随机推荐
- LintCode 846.多关键字排序
LintCode 846.多关键字排序 描述 给定 n 个学生的学号(从 1 到 n 编号)以及他们的考试成绩,表示为(学号,考试成绩),请将这些学生按考试成绩降序排序,若考试成绩相同,则按学号升序排 ...
- [译]RabbitMQ教程C#版 - 发布订阅
先决条件 本教程假定 RabbitMQ 已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需要调整连接设置. 从哪里获得帮助 如果您在阅读本教程时遇到困难, ...
- Python SQLAlchemy多对多外键关联时表结构
# 创建多对多表结构 from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.engine import cre ...
- jquery延迟加载(懒加载)插件
Lazy Load 是一个用 JavaScript 编写的 jQuery 插件. 它可以延迟加载长页面中的图片. 在浏览器可视区域外的图片不会被载入, 直到用户将页面滚动到它们所在的位置. 这与图片预 ...
- 解决一次git问题
由于特殊原因,工作中不能使用sourcetree,今天遇到了一个问题记录一下解决办法,后续还是得好好去廖雪峰大神那里学习一下git的命令行操作呀 You have not concluded your ...
- vue项目知识点总结
一.vue中如何获取select被选中的id和对应的值. <!-- 下拉框 --> <div v-show="moreStore" class="sel ...
- SWPU新闻后台登录页面
最终效果图: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <ti ...
- antd按需加载,配置babel-plugin-import插件,编译后报错.bezierEasingMixin()解决方案
报错如下: ./node_modules/antd/lib/button/style/index.less (./node_modules/css-loader??ref--6-oneOf-7-1!. ...
- CSS3新特性介绍
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...
- thrift之php,python使用TServerSocket并发 处理请求
要求: 不适用nginx+fastcgi情况下,分布式系统之间如果通讯,如果不阻塞,能并发处理请求 环境: luman/laravel:5.5 php:7.2 thrift -version :Thr ...