http://www.imdsx.cn/index.php/2017/07/27/html2/

DOM(Document Object Model 文档对象模型)

一个web页面的展示,是由html标签组合成的一个页面,dom对象实际就是将html标签转换成了一个文档对象。可以通过dom对象中js提供的方法,找到html的各个标签。通过找到标签就可以操作标签使页面动起来,让页面动起来。

获取标签

// 直接获取标签

document.getElementById('i1'); //获取id为i1的标签

document.getElementsByTagName('div'); //根据标签名称获得标签数组

document.getElementsByClassName('c1'); //根据class属性获取标签的数组

document.getElementsByName('dsx'); //根据name属性获取标签数组

// 间接获取标签

var tmp=document.getElementById('h-test');

tmp.parentElement; // 父节点标签元素

tmp.children; //所有子标签

tmp.firstElementChild; //第一个子标签元素

tmp.lastElementChild; // 最后一个子标签元素

tmp.nextElementSibling; //下一个兄弟标签元素

tmp.previousElementSibling; //上一个兄弟标签元素

操作标签

一、文本内容操作

innerHTML与innerText

tmp.innerText; // 获取标签中的文本内容

tmp.innerText='老铁双击666'; //更改标签内文本内容

tmp.innerHTML; // 获取标签中的所有内容,包含html代码

tmp.innerHTML = '<a href="http://www.imdsx.cn">大师兄</a>' // innerHTML 可以将含有HTML代码的字符串变为标签

input、textarea标签

tmp.value; //获取input、textarea参数

tmp.value = '内容' // 对input、textarea的内容进行赋值

select标签

tmp.value; //获取select标签的value参数

tmp.value = '选项' // 修改select选项

tmp.selectedIndex; // 获取select标签的选项下标

tmp.selectedIndex = 1 // 通过下标更改select的选项

事件

直接绑定

直接在标签中绑定事件

间接绑定

通过JavaScript获取到需要绑定事件的标签,obj.onclick=function(){} 绑定事件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
直接绑定
<input type="button" value="提交" style="float:left;margin-top: 16px" ondblclick="showValueD();">

//this代指当前这个操作的标签
<input type="button" value="提交" style="float:left;margin-top: 16px" ondblclick="showValueD(this);">

// function接收this,通过查找父级,兄弟,子级来定位操作的元素
function showValueD(ths) {

    alert(ths.previousElementSibling.value);

}

间接绑定

var obj = document.getElementById('onmouse');
obj.onmouseover = function () {

    obj.style.background = 'red';

};

// 间接绑定的this代指,getElementById找到的这个标签
var obj = document.getElementById('onmouse');
obj.onmouseout = function () {

    this.style.background = '';

}

//装逼绑定 支持同一个操作执行不同的两段代码
var obj = document.getElementById('onmouse');
obj.addEventListener('click', function () {

    console.log(111)

}, false)

onfocus() //获取光标时做操作
onblur() //失去焦点做操作
onclick() //单击时做操作
ondblclick() //双击时操作
onmouseover() //鼠标悬浮触发操作
onmouseout() //鼠标离开悬浮时触发操作

操作样式

tmp.className = 'c1'; // 更改标签class属性 只能有一个class属性

tmp.classList;// 获取样式数组

tmp.classList.add('aaa'); //添加样式 数组

tmp.classList.remove('aaa'); //删除样式

tmp.checked; //获取checkbox的状态 true为勾选

操作单独样式

style.xxx //操作样式的粒度更加细化,操作单个样式属性,相当于在标签中增加一个style属性

style.backgroundColor // 例:在css中样式可以通过【-】进行连接,在JavaScript中,所有的【-】都被去掉,【-】后面的第一个字符大写

操作属性

setAttribute(key,value) //设置属性,在标签中添加属性或自定义属性

removeAttribute(key) //删除属性,在标签中删除指定属性

attributes //获取标签的所有属性

创建标签

对象方式创建标签

createElement(tagName) //通过DOM创建一个标签对象

appendChild(tagObj) //在父级标签内添加一个子标签对象

字符串方式创建标签

insertAdjacentHTML(where, tagStr) //父级标签内或外添加一个子、兄标签

beforeBegin //插入到获取到标签的前面

afterBegin //插入到获取到标签的子标签的前面

beforeEnd //插入到获取到标签的子标签的后面

afterEnd //插入到获取到标签的后面

其他操作

console.log(msg) //打印数据

alert() //弹框提示

confirm() //确认弹框,返回true or false

location.href //获取当前的url

location.href = 'http://www.imdsx.cn' //重定向

location.reload() //刷新

location.href = location.href //刷新

定时器

setInterval(function, time) //设置定时器,每隔time时间就执行一次

clearInterval(intervalObj) //清除定时器

function timeInterval() {

    var setInt = setInterval(function () {

        console.log(1);

//执行一次就结束定时任务

        clearInterval(setInt)

    }, 1000)

}

setTimeout(function, time) //设置定时器,页面加载完成后,time时间后,执行function,只执行一次

clearTimeout(timeoutObj) //等待过程中 清除定时器

function timeOutInterval() {

    var setTime = setTimeout(function () {

        console.log('点击操作后,两秒后提示文案')

    }, 2000);

// 等的过程中,清除定时器

    clearTimeout(setTime)

}

HTML基础二-DOM操作的更多相关文章

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

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

  2. Jquery基础之DOM操作

    转自:http://www.cnblogs.com/bro-ma/p/3063942.html JQuery中的DOM操作主要对包括:建[新建].增[添加].删[删除].改[修改].查[查找][像数据 ...

  3. jquer 基础篇 dom操作

    DOM操作: 1.新增元素:创建元素:$("HTML")返回的创建成功的新元素新增子元素:元素.append(obj) 在匹配元素的里面新增一个子元素 追加方式 新元素作为最后一个 ...

  4. jQuery 源码解析(二十二) DOM操作模块 复制元素 详解

    本节说一下DOM操作模块里的复制元素子模块,该模块可以复制一个DOM节点,并且可选择的设置是否复制其数据缓存对象(包含事件信息)和是否深度复制(子孙节点等),API如下: $.clone(elem, ...

  5. JavaScript基础:DOM操作详解

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. 前言 JavaScript的组成 JavaScript基础分为三个部分: ...

  6. html基础:DOM操作

    DOM(Document Object Model 文档对象模型) 一个web页面被封装成一个dom对象,通过dom中的js对页面的标签进行操作 一.获取对象 浏览器页面上右键--检查--consol ...

  7. HTML基础之DOM操作

    DOM(Document Object Model 文档对象模型) 一个web页面的展示,是由html标签组合成的一个页面,dom对象实际就是将html标签转换成了一个文档对象.可以通过dom对象中j ...

  8. DOM基础及DOM操作HTML

     文件对象模型(Document Object Model.简称fr=aladdin" target="_blank">DOM).是W3C组织推荐的处理可扩展标 ...

  9. Python基础二_操作字符串常用方法、字典、文件读取

    一.字符串常用方法: name.captitalize()                       #字符串首字母大写 name.center(50,'*')                   ...

随机推荐

  1. [转载]3.4 UiPath键盘操作的介绍和使用

    一.键盘操作的介绍 模拟用户使用键盘操作的一种行为: 例如使用发送热键(Sendhotkey),输入信息 (Typeinto)的操作 二.键盘操作在UiPath中的使用 1.打开设计器,在设计库中新建 ...

  2. 查看window重启日志

    命令行输入 net statistics WORKSTATION 显示开机时间 如果你今天一直没有关机,但是你看到这个信息显示今天XX点才开始统计数据的说明电脑重启了

  3. RICOH C4502彩色打印机取消双面打印功能

    参考下面步骤:

  4. 移动端布局方案—vw+rem

    前言 首先你要知道 vw 和 rem 是什么?怎么使用? ①:简单来说 vw 是视口单位,相当于把视口等分成了100,1vw = 1; ②:rem是相对单位,设置根元素 html 的 font-siz ...

  5. vue引入bootstrap、jquery

    在进行vue的学习,项目中需要引入bootstrap.jquery的步骤. 一.引入jQuery 在当前项目的目录下(就是package.json),运行命令 cnpm install jquery ...

  6. Jaeger接入Python应用:jaeger-client-python【非完全教程】

    目录 Jaeger接入Python应用 1. 安装 jaeger-client 2. (示例)创建 Tracer 对象,并通过 Tracer 对象创建 Span 来追踪业务流程. 3. 初始化和配置 ...

  7. .net Core 学习笔记(实体字段映射,IOC注入)

    https://github.com/wj1034184751/ADO.NetCore.git 先简单的做一个学习架子, EF层用的是 EFCore(2.1.0)+ Pomelo.EntityFram ...

  8. MD5加密方法HashPasswordForStoringInConfigFile(string,string)过时问题处理方法

    最近写代码的时候一直有一种很奇怪的感觉,查了一下发现原来是系统中的MD5加密方法报了过时的警告,虽然对系统没有任何影响,但是开发过程中绿色波浪线就像挥之不去的阴影一样.开发人员多多少少都会有点强迫症, ...

  9. HTML CSS布局定位

    我们在编写网页代码时,首先应该做的就是设计好页面的布局形式,然后再往里面填充内容.网页布局的好与坏,直接决定了网页最终的展示效果.PC端常见的网页布局形式有两列布局.三列布局等.在CSS中,我们通常使 ...

  10. xampp windows10下xdebug调试环境安装及配置

    xampp是在windows环境下做php,mysql开发的全家桶,免去了很多apache, php集成配置,数据库驱动安装配置的过程,应用非常广泛. xdebug是php开发调试必备利器,本文就记录 ...