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

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

dom操作,文档对象模型,操作页面上的任意的一个标签,如何定位标签byid,byclass,当标签没有ID和class时候 需要简介定位,
分析html 目标标签和当前标签的关系,搞清楚寻找路径,用下面的方法进行定位,定位后找到value(只要能看到就能修改),input,select
div标签定位例如:
<div class="inner" id="inner1">
<span>input: </span>
<input type="text" placeholder="div的id是inner1">
</div>
// 定位标签 赋值给e 找到div标签
var e = document.getElementById('inner1')
innerText与innerHTML区别,
innerText添加的是字符串
e.innerText='<a href="http://www.baidu.com">跳转百度</a>'
innerHTML如果传一个符合html标签规则的字符串那么可以点击跳转
e.innerHTML='<a href="http://www.baidu.com">跳转百度</a>' 方法:
e.children 获取div标签的子元素[span,input]
e.firstElementChild 获取第一个子元素
e.lastElementChild的 获取最后一个上相邻元素
e.parentElement 拿div外层的标签
e.nextElementSibling 下一个兄弟标签
e.previousElementSibling 上一个兄弟标签

操作样式
e = <div class="inner " id="clst"></div>
1.首先定位标签
2.通过className修改样式 e.className='css样式'
通过classList.add('css样式')增加样式,classList.remove('css样式')删除样式
3.操作style属性 e.style.backgroundColor='black'
4.隐藏某一个元素 e.style.display='none'

操作属性
r = <input type="text" value="通过removeAttribute删除属性" id="r1">
1.removeAttribute(key): 删除属性,在标签中删除指定属性 r.removeAttribute('value')
2.setAttribute(key,value): 设置属性,在标签中添加属性或自定义属性 r.setAttribute('placeholder','请输入用户名')

创建标签
对象创建标签
1.createElement(tagName): 通过DOM创建一个标签对象 var input = document.createElement('input')
2.appendChild(tagObj): 在父级标签内添加一个子标签对象 e.appendChile(input)

字符串创建标签
var str = '<input type="text" value="1231232">'
e.insertAdjacentHTML('beforeBegin',str)
beforeBegin: 插入到获取到标签的前面
afterBegin: 插入到获取到标签的子标签的前面
beforeEnd: 插入到获取到标签的子标签的后面
afterEnd: 插入到获取到标签的后面

web前端_DOM操作的更多相关文章

  1. web前端----jQuery操作标签

    样式操作 样式类 addClass();// 添加指定的CSS类名. removeClass();// 移除指定的CSS类名. hasClass();// 判断样式存不存在 toggleClass() ...

  2. web 前端 常见操作 将时间戳转成日期格式 字符串截取 使用mui制作选项卡

    1.将时间戳转成日期格式: //第一种 function getLocalTime(nS) { return new Date(parseInt(nS) * 1000).toLocaleString( ...

  3. js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符

    js中对arry数组的各种操作小结   最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊 ...

  4. web前端的春天 or 噩梦

    「 微信应用号可以做什么」 简单说,微信"小程序"可以为开发者提供基于微信的表单.导航.地图.媒体和位置等开发组件,让他们在微信的网页里构建一个 HTML 5 应用.同时微信还开放 ...

  5. 也许你需要点实用的-Web前端笔试题

    之前发的一篇博客里没有附上答案,现在有空整理了下发出来,希望能帮助到正在找工作的你,还是那句话:技术只有自己真正理解了才是自己的东西,共勉. Web前端笔试题 Html+css 1.对WEB标准以及w ...

  6. 用grunt搭建web前端开发环境

    1.前言 本文章旨在讲解grunt入门,以及讲解grunt最常用的几个插件的使用. 2.安装node.js Grunt和所有grunt插件都是基于nodejs来运行的,如果你的电脑上没有nodejs, ...

  7. 每天成长一点---WEB前端学习入门笔记

    WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工 ...

  8. [转载]Web前端开发工程师编程能力飞升之路

    [背景] 如果你是刚进入web前端研发领域,想试试这潭水有多深,看这篇文章吧:如果你是做了两三年web产品前端研发,迷茫找不着提高之路,看这篇文章吧:如果你是四五年的前端开发高手,没有难题能难得住你的 ...

  9. web前端面试试题总结---html篇

    HTML Doctype作用?标准模式与兼容模式各有什么区别? (1).<!DOCTYPE>声明位于位于HTML文档中的第一行,处于 <html> 标签之前.告知浏览器的解析器 ...

随机推荐

  1. 前端数据Mock

    参考链接:https://www.clloz.com/programming/front-end/js/2019/05/10/data-mock/?utm_medium=hao.caibaojian. ...

  2. Rsyslog收集应用日志

    收集系统其它服务日志,在客户端node1 上操作,示例以openstack-nova 服务的日志为例: 1.先修改配置文件 /etc/rsyslog.conf,完整内容如下: [root@node1 ...

  3. Spring(十二)--Spring AspectJ

    Spring AspectJ AspectJ是一个面向切面的框架,它扩展了Java语言.AspectJ定义了AOP语法,所以它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件. As ...

  4. Maximum XOR Sum 系列问题

    给定 $n$ 个两两不同的正整数 $a_1, a_2, \dots, a_n$,$a_i < 2^k$ . Problem 1(经典问题) 求 $a_i \xor a_j$ 的最大值,$ 1\l ...

  5. java中的12种锁

    java中很多地方会涉及到锁,比如java代码并发场景,DB中的并发场景,分布式中的锁....你知道几种呢?下面来看看常见的11种锁 1. 乐观锁/悲观锁 这两个概念是人们对java中各种锁总结提出的 ...

  6. 有关最短路上的第k小/大值的总结

    1.USACO08JAN  Telephone Lines 题面 由于问的是最大值最小,所以二分加验证就好了 比较显然的,题干问的是第k+1长的路最短: 那么二分答案是正确的方向: 但是怎么验证? 我 ...

  7. Power Tower(广义欧拉降幂)

    题意:https://codeforc.es/contest/906/problem/D 计算区间的: ai ^ ai+1 ^ ai+2.......ar . 思路: 广义欧拉降幂: 注意是自下而上递 ...

  8. p24 map 之 golang基础

    Go语言中提供的映射关系容器为map,其内部使用散列表(hash)实现. 参考文档 https://www.liwenzhou.com/posts/Go/08_map/ package main im ...

  9. 使用Python基于HyperLPR/Mask-RCNN的中文车牌识别

    基于HyperLPR的中文车牌识别 Bolg:https://blog.csdn.net/lsy17096535/article/details/78648170 https://www.jiansh ...

  10. [Next] 六.next的优化

    导出 html 并开启服务 我们将 pages 下页面导出为静态 HTML 页面.首先,next.config.js 在应用程序的根目录中创建一个名为的文件,并添加以下内容 exportPathMap ...