dom操作------获取元素的若干方法
// 1,getElementById:返回元素节点
document.getElementById(); // 2,getElementsByClassName:返回HTMLCollection对象(IE9以下不支持。)
document.getElementsByClassName(); // 3,getElementsByTagName:返回HTMLCollection对象
document.getElementsByTagName(); // 4,getElementsByTagName:返回nodeList对象,第0项为元素节点
document.getElementsByName(); // 5,querySelector:返回选择器匹配到的第一个元素节点(选择器同css用法一致,支持由外到内的嵌套写法)
document.querySelector('#box em'); // 6,querySelectorAll:返回nodeList对象(类似数组对象,每个值为选中元素节点)
document.querySelectorAll(); // 7,获取子元素集合
// childNodes(IE:只获取元素节点;非IE:获取元素节点与文本节点;)
document.getElementById().childNodes;
// children(只获取元素节点,浏览器表现相同)
document.getElementById().children; // 8,获取最后一个元素节点:lastElementChild(IE<9不支持)
document.getElementById().lastElementChild; // 9,获取第一个元素节点:firstElementChild(IE<9不支持)
document.getElementById().firstElementChild; // 10,获取后一个兄弟元素节点
// nextSibling(IE<9:后一个兄弟元素节点;非IE6,7,8:后一个兄弟节点,文本节点或者元素节点)
document.getElementById().nextSibling;
// nextElementSibling(IE<9不支持)
document.getElementById().nextElementSibling; // 11,获取前一个兄弟元素节点
// previousSibling(IE<9前一个兄弟元素节点;非IE6,7,8:前一个兄弟节点,文本节点或者元素节点)
document.getElementById().previousSibling;
// previousElementSibling(IE<9不支持)
document.getElementById().previousElementSibling; // 12,parentNode:获取父元素节点(parentElement用法一致,仅IE支持)
document.getElementById().parentNode; // offsetParent:获取第一个设置定位的上级元素,返回元素节点
console.log(document.getElementById().offsetParent) // 14,获取指定的某个上级元素的方法
let el = document.getElementById();
getParents(el, {id: 'box'}) function getParents (el, option) {
let ele = null;
while (el.tagName !== 'BODY') {
const attr = Object.keys(option)
if (el[attr].toUpperCase() === option[attr].toUpperCase()) {
ele = el;
break;
}
el = el.parentNode;
}
return ele
}
dom操作------获取元素的若干方法的更多相关文章
- JavaScript的DOM操作获取元素周边大小
一.clientLeft 和 clientTop 这组属性可以获取元素设置了左边框和上边框的大小,目前只提供了 Left 和 Top 这组,并没有提供 Right 和 Bottom. <scri ...
- javascript的DOM操作获取元素
一.document.getElementById() 根据Id获取元素节点 <div id="div1"> <p id="p1"> ...
- JavaScript的DOM操作获取元素的大小
通过 style 内联获取元素的大小 需要注意的是style 获取只能获取到行内 style 属性的 CSS 样式中的宽和高,如果有获取:如果没有则返回空. <!DOCTYPE html> ...
- JavaScript的DOM操作获取元素实际大小
clientWidth 和 clientHeight 这组属性可以获取元素可视区的大小,可以得到元素内容及内边距所占据的空间大小. 返回了元素大小,但没有单位,默认单位是 px,如果你强行设置了单位, ...
- js dom操作获取节点的一些方法
在复习javascript基础的时候,整理了一下js中获取节点的一些常用的方法,见代码: //js获取下一个兄弟节点 function getNextSibling(eleObj){ var next ...
- javascript DOM和DOM操作的四种基本方法
在了解了javascript的语言特性后,javascript真正大放光彩的地方来了——这就是javascript DOM Javascript DOM DOM(Document Object Mod ...
- dom操作------获取长/宽/距离等值的若干方法
1.offsetLeft:获取元素边框以外至文档顶的距离:若其祖先元素有定位属性position则返回值为元素到该定位元素的距离,不包括祖先元素的三宽(padding,border,margin),且 ...
- javascript dom编程艺术笔记第三章:DOM操作的5个基本方法
JavaScript的 DOM操作,主要是对DOM这三个字母中D.O.M的操作.D代表的是document(文档),即我们可以使用javascript对文档进行操作,O代表的是object(对象),对 ...
- jQuery使用(六):DOM操作之元素包裹、克隆DOM与data的综合应用
包裹 wrap() wrapInner() wrapAll() unwrap() clone() 数据缓存机制 data 文档处理(包裹) 1.1.wrap()--将所匹配的元素用其他元素结构化标签包 ...
随机推荐
- iOS 使用代码创建约束,实现自动布局
///与下面约束对象属性截图相对应//使用Auto Layout约束,禁止将Autoresizing Mask转换为约束 [self.funcView setTranslatesAutoresizin ...
- javascript Object.create()究竟发生了什么
这是我在博客园的第一篇博客,早上看了一个大牛的博客,关于javascript继承的,对于大牛使用Object.create()实现继承的方式觉得点问题,就自己研究了一下,所以就有了这篇帖子. 本帖 ...
- [翻译]第二天 - Visual Studio 中的 .NET Core 模版一览
原文: http://michaelcrump.net/part2-aspnetcore/ 免责声明:我不是 .NET Core 开发团队的一员,并且使用的是公开.可用的工具. 简介 该系列文章的完整 ...
- C# 利用VS中的插件来打包并发布winfrom程序
1.先在VS 的扩展更新中搜索此插件[2015 installer Projects],点击下载,安装需要关闭VS 2.安装完毕之后新建项目 3.选择“application folder”项,然后在 ...
- 为什么要使用Entity Framework
本文介绍从DDD(Domain-Driven Design[领域驱动设计])的角度来说说为什么要使用Entity Framework(以下都会简称为EF),同时也看出类似Drapper之类的简陋ORM ...
- Redis .Net
一.Redis简介 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,和Memcached类似,它支持存储的value类型相对更多,包括 ...
- vue.js - 1
最近开发公司vue前端项目,做一下笔记,偶尔上来查漏补缺 Vue指令之v-bind的三种用法 直接使用指令v-bind 使用简化指令: 在绑定的时候,拼接绑定内容::title="btnTi ...
- 网络基础、ftp任务(进度条、计算文件大小、断点续传、搭建框架示例)
一.网络基础 1.端口,是什么?为什么要有端口? 端口是为了将同一个电脑上的不同程序进行隔离. IP是找电脑:端口是找电脑上的应用程序: 端口范围:1 – 65535 : 1 - 1024 不要 ...
- Android实战源码--围住神经猫
最终效果: AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manif ...
- eclipse安装STS遇到的问题
eclipse安装STS时,在eclipse marketplase中搜索STS没有结果,从官网下载STS包,然后安装提示找不到JAR包, 解决方式: eclipse需要和STS包版本一致,如果STS ...