DOM修改元素的方法总结
今天我们要谈谈DOM元素的修改(包括修改内容,属性,样式)。
修改内容的方法----3种:
elem.innerHTML:获取或设置元素开始标签到结束标签之间的原始HTML代码片段;
elem.textContent:获取或设置元素开始标签到结束标签之间的纯文本内容---要考虑兼容性问题IE9+;
获取表单元素的内容:value;
修改属性的方法----2种
1. 核心DOM:操作一切结构化文档的API(HTML,XML)
elem.getAttribute();elem.setAttribute(attr,..);
判断是否包含属性:elem.hasAttribute();
移除属性:elem.removeAttribute();
2. TML DOM:对部分常用DOM的简化版本;---这种常用
获取属性值:elem.属性名;
修改属性值:elem.属性名= '值';
判断是否包含属性:elem.属性名===''不包含;
移除属性:elem.属性名='';
我们常在表单元素中遇到三大状态属性:selected checked disabled;
不过我们无法使用DOM核心来操作这些状态属性,因此我们需要使用HTML DOM方法:
使用HTML DOM可以操作三大状态。(elem.disabled;elem.selected;elem.checked)值是布尔值;
3. 代码的维护性:
后续再更改网站样式的时候,如果样式比较多,首选使用类,然后把类添加到内容里面;这样便于代码的维护性。
4. 添加和删除
创建空元素:var aa =document.createElement('a');
aa.href ='www.baidu.com';
aa.innerHTML ='G';
1.末尾追加document.body.appendChild(aa);需要添加到body中;
2.中间插入:parent.insertBefore(newTarget,oldtarget)
3.替换:parent.replaceChild(child,oldChild);
优化:
尽量少的修改DOM树
原因:页面加载过程中,尽量少的修改DOM,每次修改,都会导致DOM树的重排和重绘,这样会对性能造成影响;
html ---------DOM Tree
丨
render Tree(圣诞树)----每次修改DOM树,都会导致DOM树的重新计算高度和宽度;
丨
css-----------css样式。
DOM修改元素的方法总结的更多相关文章
- Dom修改元素样式
提纲:我们可以通过js来修改元素的大小,颜色,位置等样式 1.element.style 行内样式的操作 2.element.className ...
- DOM获取元素的方法
DOM:document object module 文档对象模型 DOM就是描述整个html页面中节点关系的图谱,如下图. 1,通过ID,获取页面中元素的方法:(上下文必须是document) do ...
- DOM查找元素的方法总结
按HTML查找:优点:范围可大可小,可设置条件:包括五种方式:1.按id查找:2.按标签名查找:var elems = parent.getElementsByTagName('');3.按name属 ...
- 如何使用StarUML for Mac创建和修改元素
StarUML for Mac是一款UML软件建模器,支持快速编辑中的许多缩写,一次创建元素和关系,如子类,支持接口等.如何使用StarUML for Mac创建和修改元素?下面我们来介绍一下. 如何 ...
- dom元素和方法总结
主要是参考<精通javascript>. 全局变量有: document.这个变量包含浏览器的html dom文档的引用. HTMElement 这个变量是所要html dom 元素的超类 ...
- JS----获取DOM元素的方法(8种)
什么是HTML DOM 文档对象模型(Document Object Model),是W3C组织推荐的处理可扩展置标语言的标准编程接口.简单理解就是HTML DOM 是关于如何获取.修改.添加或删除 ...
- DOM 修改与DOM元素
㈠HTML DOM - 修改 修改 HTML = 改变元素.属性.样式和事件. ①创建 HTML 内容 改变元素内容的最简单的方法是使用 innerHTML 属性. 下面的例子改变一个 <p ...
- 使用原生js来控制、修改CSS伪元素的方法总汇, 例如:before和:after
在网页中,如果需要使用辅助性/装饰性的内容的时候,我们不应该直接写在HTML中,这样会影响真正的内容,这就需要使用伪元素了,这是由于css的纯粹语义化是没有意义的.在使用伪元素的时候,会发现js并不真 ...
- DOM获取元素、修改元素
## DOM获取元素.修改元素### 1.DOM#### ①什么是DOM?作用? > DOM是文档对象模型 > 作用:操作网页内容,可以开发网页内容特效和实现用户交互.#### ②DOM对 ...
随机推荐
- Apache 禁用IP 访问 和 HTTP 跳转 HTTPS
如果需要 禁用IP 访问并且 需要 HTTP 跳转到 HTTPS <VirtualHost *:80> ServerName xxx.xxx.com RewriteEngine On Re ...
- dubbo入门学习(三)-----dubbo整合springboot
springboot节省了大量的精力去配置各种bean,因此通过一个简单的demo来整合springboot与dubbo 一.创建boot-user-service-provider 本篇博文基于上篇 ...
- Zookeeper教程
由于zookeeper使用java语言编写,因此我们运行zookeeper需要保证你的服务器上已经安装了jdk. 安装zk 本文介绍的前提是已经默认安装好了jdk,Linux安装JDK教程https: ...
- 通过java反射实现的excel数据导出
Excel.java @SuppressWarnings("deprecation") public static <T> void ExportExcel(Strin ...
- kafka使用示例
示例代码如下: producer生产者 package main import ( "fmt" "github.com/Shopify/sarama" ) fu ...
- idea2018.1.5永久破解过程
可以根据官网推荐注册idea:http://idea.lanyus.com/ 步骤如下:1 下载破解(crack) jar 包 链接:https://pan.baidu.com/s/1-COPHVJi ...
- 使用 windows 批处理指令(BAT文件)进行文件删除、复制操作
以下是做文件删除和复制的批处理指令 ::替换文件需要添加 /y 参数才能直接替换.不然会出现提示是否替换. ::复制Axis2Implementation和WebServices编译后的文件到tomc ...
- 设置mysql二进制日志过期时间
((none)) > show variables like 'expire_logs_days'; +------------------+-------+ | Variable_name | ...
- Redis源码解析:22sentinel(三)客观下线以及故障转移之选举领导节点
八:判断实例是否客观下线 当前哨兵一旦监测到某个主节点实例主观下线之后,就会向其他哨兵发送"is-master-down-by-addr"命令,询问其他哨兵是否也认为该主节点主观下 ...
- 20190815-$N \Theta IP$
$NOIP$ 请选择您想测试的难度: 「困难」 「困难的地狱」 「能被神犇切掉的」 「你做不出来的」 「简单(完成前面所有后解锁)」 要难死了-- 考试过程: 首先看看三道题: 这是NOIP模拟测试? ...