JS高级-34-昨天内容回顾     时间:2015-5-11

1、DOM获取元素节点

document.getElenmentById(id 属性值)                                   具体元素节点对象

document.getElenmentsByTagName(tag 标签名称 div ul li)        数组列表

document.getElenmentsByName(Name 属性值)                       数组列表

2、DOM获取属性节点及属性操作

node.attributes;                   数组列表

node.attributes.属性名称;       获取具体属性节点对象

node.attribute['class'] 获得 class 属性节点

属性操作

操作w3c规定的属性

node.属性名称;         获得属性信息

node.属性名称=属性值;    修改属性信息

操作 class属性,需要将其设置为className名称。

node.className;

操作w3c规定的 和 自定义的 属性

node.getAttribute(属性名称);

node.setAttribute(名称,值)

3、DOM获得文本节点

<div>hello</div>

divnode.firstChild;       获得文本节点

nodeType:

1 -> 元素节点

2 -> 属性节点

3 -> 文本节点

4 -> document文档节点

lastChild;   childNodes   nextSibling   previousSibling   parentNode

4、DOM各个节点创建、追加

创建:

元素节点 document.createElement(tag 标签名称)

文本节点 document.createTextNode(文本内容)

属性 node.setAttribute(属性名称,值)

追加

父节点.appendChild(子节点);

父节点.insertBeFore(new,old);

父节点.replaceChild(new,old);

5、DOM节点删除和复制

删除:

父节点.removeChild(子节点)

复制:

节点.cloneNode(true 深层复制/false浅层复制);

6、DOM操作css样式

node.style.样式名称;   //获得样式属性信息

node.style.样式名称=值;  //设置样式属性信息

注意:

① 自能操作行内样式

② 操作符合属性(例如:background-color、border-left、margin-bottom),中横线去掉后边首字母大写,backgroundColor、borderLeft、marginBottom

7、dom2 级方式事件设置

主流浏览器

node.addEventListener(类型、事件处理、事件流)

node.removeEventListener(类型、事件处理、事件流)

类型:click   mouseover   mouseout   focus   blur 等事件

事件处理:匿名函数表达式、函数名称

事件取消注意:

① 事件取消的参数 与 绑定的参数完全一致

② 事件处理必须是一个有名函数

IE 浏览器

node.attachEvent(类型,事件处理);

node.detachEvent(类型,事件处理);

类型:onclick   onmouseover   onmouseout  等等

事件流:只有一种冒泡型事件流

8、事件流

有许多节点,他们的物理位置彼此嵌套,他们还有相同的事件,一旦一个节点的事件被触发,会把其他节点的相同时间也给触发,连续多个事件同时顺序执行就是一个“事件流”。

9、事件对象获取及相关作用

事件对象获取:

① 主流浏览器  node.onclick = function(evt){ 操作 evt }

② IE方式 windows.event;

事件对象作用:

① 获得鼠标位置(clientX   clientY   pageX   pageY   screenX   screenY)

② 获得键盘被按下的情况     event.keyCode

③ 阻止事件流的产生

event.stopPropagation();      主流浏览器

event.returnValue = false;    IE浏览器

10、加载事件

相关的js代码要等待全部的 html 和 css 都加载到内存之后再执行,这个过程称为“加载过程”,可以利用“加载事件”执行该过程

window.onload = function(){ 执行具体加载过程 }

window.onload = fn;

JS高级学习历程-1的更多相关文章

  1. JS高级学习历程-6

    PHP菜鸟学习历程-6 [闭包案例] 1 闭包创建数组 <!DOCTYPE html> <html lang="en"> <head> < ...

  2. JS高级学习历程-15

    昨天内容回顾 面向对象的私有成员.静态成员 私有成员:在构造函数里边定义局部变量,就是私有成员. 静态成员:在js里边,函数就是对象,可以通过给函数对象声明成员方式声明静态成员. 原型继承 关键字:p ...

  3. JS高级学习历程-14

    昨天内容回顾 1. 面向对象的私有成员.静态成员 私有成员:在构造函数里边定义局部变量,就是私有成员. 静态成员:在js里边,函数就是对象,可以通过给函数对象声明成员方式声明静态成员. 2. 原型继承 ...

  4. JS高级学习历程-11

    [继承] 在php,一个类去继承另一个类,本类实例化出来的对象,既可以调用本身类的成员,也可以调用父类的成员. 在javascript继承主要通过原型实现,构造函数继承一个对象,构造函数的实例会拥有被 ...

  5. JS高级学习历程-10

    [面向对象] 面向对象的三大特性:封装.继承.多态 封装:在“类”里边有关键字public.protected.private 对成员进行声明,这样每个成员的访问都会受到不同关键字的限制. 继承:在p ...

  6. JS高级学习历程-5

    [闭包] 定义:闭包就是一个函数 条件:一个函数去嵌套另外一个函数,里边的函数就是闭包 function  f1(){ function f2(){ } } 特点:闭包函数有权访问父级环境的变量信息.

  7. JS高级学习历程-3

    JS-作用域链及作用 [作用域链] 1 什么事作用域链 一个变量,在当前环境可以使用,当前环境的内部环境也可以使用,内部的深层环境...也可以使用,变量在不同环境都可以使用的现象想成了一个链条,称为“ ...

  8. JS高级学习历程-17

    [正则案例] 1 匹配手机号码

  9. JS高级学习历程-16

    [正则表达式] 1()小括号使用 作用:① 提高表达式优先级关系 ② 提取子字符串内容 模式单元,每个小括号都算作一个模式单元内容,按照内容的下标可以给小括号计数. var  reg = /([0-9 ...

随机推荐

  1. ABAP 日期栏函数

    在SZC这个中有很多日期函数可以研究借鉴   ABAP - 日期格式转换 现在提供以下一些日期格式转换的函数: Below are several FMs which can be used to c ...

  2. Machine Learning in Action(2) 决策树算法

    决策树也是有监督机器学习方法. 电影<无耻混蛋>里有一幕游戏,在德军小酒馆里有几个人在玩20问题游戏,游戏规则是一个设迷者在纸牌中抽出一个目标(可以是人,也可以是物),而猜谜者可以提问题, ...

  3. 重新认识vue之事件阻止冒泡

    冒泡的表现 近期用vue做了一个需求,大概是同一个区域,点击不同位置有不同的响应函数,还有个总的响应函数,好吧,如下图所示: 他们的DOM结构如下: <div v-for="(item ...

  4. 人生苦短之Python枚举类型enum

    枚举类型enum是比较重要的一个数据类型,它是一种数据类型而不是数据结构,我们通常将一组常用的常数声明成枚举类型方便后续的使用.当一个变量有几种可能的取值的时候,我们将它定义为枚举类型.在Python ...

  5. 分布式锁(Zookeeper实现)

    分布式锁 分布式锁,这个主要得益于 ZooKeeper 为我们保证了数据的强一致性.锁服务可以分为两类,一个是 保持独占,另一个是 控制时序. 1. 所谓保持独占,就是所有试图来获取这个锁的客户端,最 ...

  6. OpenGL之坐标转换(好文-清晰版)

    http://blog.csdn.net/zhongjling/article/details/8488844OpenGL之坐标转换(好文-清晰版)

  7. 用 Java 抓取优酷、土豆等视频

    1. [代码][JavaScript]代码  import org.jsoup.Jsoup;import org.jsoup.nodes.Document;import org.jsoup.nodes ...

  8. codeforces 31C Schedule 解题报告

    题目链接:http://codeforces.com/problemset/problem/31/C 题目意思:给出 n 个 lessons 你,每个lesson 有对应的 起始和结束时间.问通过删除 ...

  9. codeforces A. Black-and-White Cube 解题报告

    题目链接:http://codeforces.com/problemset/problem/323/A 题目意思:给定值 k ,需要输出 k 个 k 行 k 列的单位立方体各表示什么颜色(或者是黑色或 ...

  10. C++软件工程师,你该会什么?

    请尊重原创: 转载注明来源   原创在这里哦 C语言广泛用于基础软件.桌面系统.网络通信.音频视频.游戏娱乐等诸多领域.是世界上使用最广泛的编程语言之一.随着物联网技术的发展,C/C++技术在3G网络 ...