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. 有关apk打包的东西最近正在整理

    下周将会呈现给大家完整的一套打包流程. {‘敬请期待’,}

  2. 细说一下position(定位),以及其他的小知识

    细说:position      位置 1.只要使用定位,必须要有一个相对的参照物.relative 2.具体定位的那个1元素需要加position:absolute:绝对的 绝对的:就是具体到某一个 ...

  3. UI常用接口使用规范

    //////////////////////////////////////////////////////////////////////////////////////////////// /// ...

  4. linux安装jdk mysql

    mysql 安装进入到mysql官网 点击archives 选择版本下载tar linux 安装mysql数据库——tar.gz包解压安装法 mysql数据库有多种安装方式,本文只介绍在Linux服务 ...

  5. Python_tkinter(1)_窗口创建与布局

    环境:Python 3.7.2 1. 窗口基本创建(窗口标题.窗口大小) import tkinter from tkinter import * # 初始化Tk() root = Tk() # 设置 ...

  6. MySql查看与修改auto_increment方法(转)

    add by zhj:  在创建表时,如果没有显式的指定AUTO_INCREMENT的值,那它默认是1 原文:https://blog.csdn.net/fdipzone/article/detail ...

  7. Vue.filter 过滤器

    [过滤器] import Vue from '../../../node_modules/vue/dist/vue'; // 后台数据与前端展示数据需要换算,与后台交互的请求的参数是不需要.假如说前端 ...

  8. python 模块大全

    logging   time datetime   sys   os   json  random   hashlib   paramiko  pymysql模块使用 subprocess  pywi ...

  9. [js]浏览器同源策略(same-origin policy)

    浏览器的同源策略 浏览器同源政策及其规避方法 什么是同源策略 A网页设置的 Cookie,B网页不能打开,除非这两个网页"同源".所谓"同源"指的是" ...

  10. cocos2d-x 编译 安卓(android)apk文件

    摘要: 一.下载Android环境 搭建Android环境需要用到Android SDK.NDK.Ant和JDK: 下载Android SDK  下载Android NDk  下载Android JD ...