DOM简介

DOM 节点分类 DOM 节点层级关系
1、文档节点 1、父节点
2、标签(元素)节点 2、子节点
3、属性节点 3、兄弟节点
4、注释节点 4、根节点
5、文本节点

DOM节点分类

DOM节点关系

获取元素

  • 通过 id 获取元素

    // document本身是window的属性 但window是可以省略不学的
    // window.document.getElementById()
    var divID = document.getElementById("divID")
  • 通过 class 获取元素(标签)节点

    // 返回值 集合类型(数组类型)
    var divClassArr = document.getElementsByClassName('divClass');
    for(var i = 0; i < divClassArr.length; i++){
    console.log(divClassArr[i]);
    }
  • 通过 tag 获取元素

    var divTagArr = document.getElementsByTagName('div');
  • 通过 name 属性获取元素

    var nameArr = document.getElementsByName('a')

获取属性节点

<script type="text/javascript">
//通过id获取input标签
var myInput = document.getElementById("inputID") // 获取属性节点
// 方式一 标签节点.属性点
console.log(myInput.type) // text
console.log(myInput.placeholder); // 修改属性节点
// 标签节点.属性名 = 新的属性值
myInput.placeholder = '嘿嘿' // 方式二
// 获取属性节点 标签节点.getAttribute(属性名称)
var inPl = myInput.getAttribute('type'); // 修改属性节点
// 标签节点 : setAttribute(属性名称,新的属性值)
myInput.setAttribute('placeholder', '666'); // 删除属性节点
myInput.removeAttribute('placeholder')
</script>

内部节点与外部节点属性

<script type="text/javascript">
// 获取div1节点
var div1 = document.getElementById("div1") // 1、innerHTML:获取元素节点
//从对象的开始标签到结束标签的全部内容,不包括本身Html标签
var innerDiv = div1.innerHTML; //2、元素节点.outerHTML
//除了包含innerHTML的全部内容外, 还包含对象标签本身
var outerDiv = div1.outerHTML; //3、元素节点.innerText
//从对象的开始标签到结束标签的全部的文本内容
var innerText = div1.innerText; //4、修改元素节点
div1.innerHTML = '<h1>666</h1>';
</script>

行间样式的获取

css对应的style属性

<div id="div1" style="width: 150px;height: 150px;background-color: red;"></div>
<button onclick="changeColor()">换颜色</button>
<script type="text/javascript">
var div1 = document.getElementById("div1");
console.log(div1);
var divArr = document.getElementsByTagName('div');
console.log(divArr); // [object HTMLCollection]
console.log(divArr[0]); // [object HTMLDivElement] // 通过标签节点获取style属性的值
var styleDiv = div1.style // 获取style属性下面的样式值 width
var width = div1.style.width; // 修改背景颜色
div1.style.backgroundColor = 'green'; // 按钮 点击一次按钮更换一次div的背景颜色 function changeColor() {
var r = parseInt(Math.random() * 256);
var g = parseInt(Math.random() * 256);
var b = parseInt(Math.random() * 256);
var colorStr = "rgb(" + r + ", " + g + ", " + b + ")";
div1.style.backgroundColor = colorStr;
} </script>

JavaScript-DOM(1)的更多相关文章

  1. 8.6 JavaScript之HTML的DOM(三)

    8.5 HTML和JavaScript的DOM(三) 一.DOM 是Document Object Model( 文档对象模型 )的缩写. DOM把所有的html都转换为节点 .整个文档 是一个节点 ...

  2. 深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点

    深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点 2011-12-28 23:00 by 汤姆大叔, 139489 阅读, 119 评论, 收藏, 编辑 才华横溢的 ...

  3. javaScript事件(二)事件处理程序

    一.事件 二.事件流 以上内容见:javaScript事件(一)事件流 三.事件处理程序 前面提到,事件是用户或浏览器自身执行的某种动作,如click,load和mouseover都是事件的名字.响应 ...

  4. javaScript事件(四)event的公共成员(属性和方法)

    一.事件 二.事件流 以上内容见:javaScript事件(一)事件流 三.事件处理程序 四.IE事件处理程序 以上内容见javaScript事件(二)事件处理程序 五.事件对象 以上内容见javaS ...

  5. javaScript事件(三)事件对象

    一.事件 二.事件流 以上内容见:javaScript事件(一)事件流 三.事件处理程序 四.IE事件处理程序 以上内容见javaScript事件(二)事件处理程序 五.事件对象 1.认识事件对象 事 ...

  6. DOM(二)使用DOM

    在了解DOM(文本对象模型)的框架和节点后,最重要的是使用这些节点处理html网页 对于一个DOM节点node,都有一系列的属性和方法可以使用.常用的有下表. 完善:http://www.w3scho ...

  7. 第18天 ajax技术和javascript加强(json)

    第18天    ajax技术和javascript加强(json) 复习: B/S架构实现文件上传的思路? 使用a标签实现文件下载功能,有什么问题? 使用Servlet实现文件下载的思路? 今日任务 ...

  8. javaScript事件(六)事件类型之滚轮事件

    滚轮事件其实就是一个mousewheel事件,这个事件跟踪鼠标滚轮,类似Mac的触屏版. 一.客户区坐标位置 鼠标事件都是在浏览器视口的特定位置上发生的.这个位置信息保存在事件对象的clientX和c ...

  9. javaScript事件(九)事件类型之触摸与手势事件

    一.触摸事件 touchstart:当手指触摸屏幕时触发:即使已经有一个手指放在了屏幕上也会触发. touchmove:当手指在屏幕上滑动时连续地触发.在这个世界发生期间,调用preventDefau ...

  10. javaScript事件(八)事件类型之变动事件

    DOM2级的变动(mutation)事件能在DOM中某一部分发送变化时给出提示.变动事件为XML或HTML DOM设计的,并不特定于某种语言.DOM2级定义了如下变动事件. DOMSubtreeMod ...

随机推荐

  1. mybits根据表自动生成 java类和mapper 文件

    mybits根据表自动生成 java类和mapper 文件 我这个脑子啊,每次创建新的工程都会忘记是怎么集成mybits怎么生成mapper文件的,so today , I can't write t ...

  2. 图解android开发在界面上显示图片

    图解android开发在界面上显示图片<申明:转自百度> <原文章地址:http://jingyan.baidu.com/article/49711c6153a277fa441b7c ...

  3. 浅谈提高Django性能

    Django性能优化是一件困难的事情,但是也不常常如此: 下面4步将能够轻松的提高你的网站的性能,它们非常简单你应该将它们 作为标配. 持久化数据库连接 django1.6以后已经内置了数据库持久化连 ...

  4. Python 学习笔记1 安装和IDE

    前面的话 现在随着互联网的快速发展,对测试人员的代码要求也越来越高.有种逐步往全栈开发人员发展的趋势. 越来越多的手工测试被自动化取代. 对于测试人员,学习一门开发语言迫在眉睫. C#, JAVA, ...

  5. PHP实现数组中每个字符出现次数最多的,并且如果两个字符出现相同,则在前面的先输出功能

    $arr = ['a', 'b', 'a', 'e', 'g', 'g', 'a']; $count_per_values = array_count_values($arr); $res = []; ...

  6. P5280 [ZJOI2019]线段树

    题目链接:洛谷 题目描述:[比较复杂,建议看原题] 这道题太神仙了,线段树上做树形dp. 根据树形dp的套路,都是按照转移的不同情况给节点分类.这里每次modify的时候对于节点的影响也不同,所以我们 ...

  7. 017-并发编程-Condition

    一.概述 任何一个Java对象,都拥有一组监视器方法,主要包括wait().notify().notifyAll()方法,这些方法与synchronized关键字配合使用可以实现等待/通知机制.使用这 ...

  8. [LeetCode] 90.Subsets II tag: backtracking

    Given a collection of integers that might contain duplicates, nums, return all possible subsets (the ...

  9. json to entity in api

    using (var client = new HttpClient()) { var WVMId = DB.Vehicles.Where(v => v.Id == new Guid(vehic ...

  10. 家庭记账本之微信小程序(六)

    Wxss的学习 WXSS(WeiXin Style Sheets)是一套样式语言,用于描述WXML的组件样式. WXSS用来决定WXML的组件应该怎么显示. 为了适应广大的前端开发者,我们的WXSS具 ...