一、javascript组成

        ECMAScript:核心解释器【为我们提供好了最基本的功能:变量声明、函数、语法、运算】。   兼容性:完全兼容。
 
        DoM:文档对象模型【document object Model】,document:操作界面的
                    比如:获取元素、修改样式、创建元素、
 
        BoM: 浏览器对象模型【Browser object Model】,操作浏览器 的,就是window.    
                    window.onload
                    window.alert
                    没有兼容性问题,基本不兼容,兼容不了。
 
二、DoM 
 
            DoM 
                                               document
                                                       |
 
1、    obj.TagName    获取标签名
(所有的字母都是大写的)
 
2、    obj.parentNode//获取父节点。
最大的祖宗是document,再往上就没有了null
3、    obj.childNodes//获取子节点【包括了文本 节点(换行等等)】。
                            节点类型:
                                        标签节点:1
文本节点:3默认的换行。
检测节点的类型。

nodeType:3【文本节点】

nodeType:1【标签节点】

4、    obj.children;//获取子节点。【只包括他 儿子不包括孙子】,是个数组。

 
5、     obj.previousSibling//获取上一个兄弟元素。至兼容ie 6,7,8.
          obj,previousElementSibling//高版本浏览器获得上一个兄弟元素。
 
“||”的妙用:​
如果两个都是真的既是真的。如果第一个是假的才会执行后面的。如果第一个是真的则执行。永远执行最后的那个。
 
var pre=previousElementSibling||oOn.previousSibling//如果一真则真。前面兼容了后面就不执行了。
 

6、    obj.nextSibling;

         obj.nextElementSibling
         var next=nextElementSibling||oOn.nextSibling;//长的写前边。
 
7、   obj.firstElementChild;//兼容高级浏览器
        obj.firstChild;//兼容ie 6 7 8
        var ofirst=obj.firtElementChild||obj.firstChild ;
 
8、    obj.lastElementChild;
         obj.lastChild;
         var la=obj.lastElementChild||obj.lastChild;
 
9、    物体信息3
            obj.offsetWidth:获取盒子模型的宽度   width+padding*2+border*2;
            obj.offsetHeight:获取盒子模型的高度
            obj.offsetLeft:获取元素 距离定位父级的左边距。没有right
            obj.offsetTop:获取元素距离定位父级的上边距。没有 bottom
  obj.offsetParent:获取定位父级。
总结:
    结构的最高父级最大是 document
    定位的最高父级最大是body
 

11、    document.createElement('div');//创建元素

           document.documentElement;//获取html标签。

           父级.appendChild(创建的元素)// 在父级的最后边添加了一个元素。
           父级.insertBefore(你要插入的元素,插入到谁之前);    
         【低版本浏览器父级.children.length==0时插入报错,所以判断】

2.3 js基础--DOM的更多相关文章

  1. JS基础-DOM

    DOM DOM 事件的级别 DOM 事件模型 DOM 事件流 DOM 事件捕获的具体流程 Event 对象的常见应用 自定义事件 DOM概述 | MDN DOM | MDN DOM操作 DOM事件级别 ...

  2. 05 JS基础DOM

    JS的window对象定时器: window下一些方法: <script> 弹出 window.alert('hello') 返回布尔值 var ret = window.confirm( ...

  3. JS基础DOM篇之二:DOM级别与节点层次?

    通过上一篇我们大致了解了什么是DOM,今天我们继续深入了解. 1.DOM级别       在大家阅读DOM标准的时候,可能会看到DOM(0/1/2/3)级的字眼,这就是DOM级别.但实际上,DOM0级 ...

  4. JS基础DOM篇之一:何为DOM?

    近日在园子看了一篇文章,一位前端负责人问应聘者何为DOM事件流的三个阶段,我当时一看也是懵圈,于是强迫症复发,遂想要搞清楚它.谁知在查资料的过程中发现有好多关于DOM的概念也是模糊不清,便决定继续延伸 ...

  5. JS基础---Dom的基本操作

    DOM的增删改查 增: 1.创建一个元素节点 document.createElement() 创建新的<p> 元素:var para=document.createElement(&qu ...

  6. JavaScript基础—dom,事件

    Js基础-DOM 1:dom:文档对象模型 Dom就是html页面的模型,将每个标签都作为一个对象,js通过调用dom中的属性,方法就可以对网页中的文本框,层等元素进行编程控制.Dom就是一些让jav ...

  7. JavaScript基础15——js的DOM对象

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象

       前   言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...

  9. 【2017-03-28】JS基础、DOM操作

    一.JS基础 1.javascript功能 ⑴进行数据运算 ⑵控制浏览器功能 ⑶控制元素的属性.样式.内容 2.javascript位置和格式 可以放在html页的任意位置,也可以创建一个以js结尾的 ...

随机推荐

  1. vba实现excel多表合并

    Excel多表合并之vba实现 需求 保留列名,复制每一个excel里的数据,合并到一个excel 操作步骤 将要合并的文件放在同一文件夹下,复制过来就好(ps:最好不要直接操作原数据文件,避免操作失 ...

  2. Win7下:编译器错误信息: CS0016

    解决办法: 原因是由于系统目录下的Temp目录无相应的权限所致,具体操作如下: 来到C:/Windows目录,修改temp文件夹的属性. 在安全页设置IIS-IUSRS的权限,赋予修改.读取.写入等权 ...

  3. java學習書

    轉載 成为Java顶尖程序员 ,看这11本书就够了 以下是我推荐给Java开发者们的一些值得一看的好书.但是这些书里面并没有Java基础.Java教程之类的书,不是我不推荐,而是离我自己学习 Java ...

  4. 「JSOI2009」球队收益 / 球队预算

    题目链接 戳我 \(Solution\) 我们发现这道题目并不好做,因为要考虑两个因素对答案的影响.于是我们假设接下来的\(m\)场比赛双方都输了.这要我们就只要考虑赢一场对答案的影响了,那每赢一场输 ...

  5. Apple开启双重认证过程

    1.准备 1.1 AppleID账号.密码 1.2 打算用于接收开启双重认证的十一位手机号 1.3 AppleID账号密保问题 2.操作步骤: 2.1 打开设置 2.2 点击个人账户头像 注意:当前有 ...

  6. 第一篇 Python的数据类型

    Python的标准数据类型有五种: (1)字符串 (2)数字(包括整数,浮点数,布尔,复数) (3)列表(list) (4)元组(tuple) (5)字典(dict) 注:使用type函数可以查看对象 ...

  7. day08.1-Linux软件包管理

    Linux系统中的两种软件包:tar,保存内容为源码,编译后再安装:rpm,保存内容为编译后的机器码,直接安装.其中,rpm软件包由5部分构成,分别为: 第1部分是name,表示这个rpm软件包的名称 ...

  8. C# 精准计时之 QueryPerformanceCounter QueryPerformanceFrequency用法

    C# 用法: public static class QueryPerformanceMethd { [DllImport("kernel32.dll")] public exte ...

  9. 5、Numpy处理数据

    转载自:http://old.sebug.net/paper/books/scipydoc/numpy_intro.html#id9 2 NumPy-快速处理数据 标准安装的Python中用列表(li ...

  10. day017-------python 类与类的关系

    类与类的关系的简单说明 一:类与类的关系 001:依赖关系 002:管理关系 003:继承关系: 二:实例理解: 01:依赖关系: # 植物大战僵尸. 创建一个植物. 创建一个僵尸 # 植物: 名字, ...