摘要:从零开始我们可以这样的代码获取到一个元素属于父元素的第几个子元素。案例代码如下通过循环遍历属性是否为这个小技巧,就可以获取到当前元素在父元素中的位置了。
我们经常通过document.getElementById 方法来获取到一个元素,这个时候我们经常需要有一个需求,那就是如何判断这个元素在父元素中的位置。
包含文本和注释节点
原生JS有一个常见的小技巧那就是通过元素的previousSibling 属性,额外需要注意的是该属性会遍历text节点,即回车键。
从零开始我们可以这样的代码获取到一个元素属于父元素的第几个子元素。
var child = this; while( (child = child.previousSibling) != null ) i++;
案例代码如下:
Html:
JS:
var child = document.getElementById("a"); var i = 0; while((child = child.previousSibling) != null) i++; console.log(i) //console 1
通过循环遍历previousSibling 属性是否为null这个小技巧,就可以获取到当前元素在父元素中的位置了。
不包含文本节点和注释节点
实现代码如下:
var child = document.getElementById("a"); var parent = child.parentNode; var index = Array.prototype.indexOf.call(parent,child); console.log(index)//1
原文链接:https://www.pipipi.net/code/9...
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/109139.html
摘要:指向后一个同辈元素的元素版。复制后返回的节点副本属于文档所有,但并没有为它指定父节点。生成结束秒钟后,将个颠倒过来,内容也就变成了。 之四:关于原生dom操作 下周被内推了百度糯米的面试,决定趁这个周末恶补下原生的js基础,感觉自己被jQuery惯坏了吧!前两天听首页部同组的大牛师兄说:其实还是js基础重要,不要盲目追求新技术,基础练好了就像把自己的内功修炼好,内功扎实才能修炼好武功秘...
摘要:得到空白节点之后,移到父节点上,删除子节点如果和在获取节点的过程中遇到 js--DOM操作 dom获取 DOM获取 //参数是字符串 document.getElementById() 获取特定 ID 元素的节点 document.getElementsByTagName() 获取相同元素的节点列表 document.getElementsByName() 获取相同名称的节点列表 d...
摘要:看了几篇博客,了解了它的几个常用属性后,可以快速生成一个网格布局。同样是出于使用动态生成布局的需要,诞生了这个小工具。 作者:云荒杯倾 写在前面 这两天了解了一下css的grid布局,发现确实很好用。看了几篇博客,了解了它的几个常用属性后,可以快速生成一个网格布局。相较于传统的float、定位等显得更成体系,更规范,不需要一些hack做法。 虽然grid布局已经很好,前端工程师中有一些...
阅读 1686·2021-11-23 09:51
阅读 3177·2021-09-26 10:21
阅读 800·2021-09-09 09:32
阅读 883·2019-08-29 16:06
阅读 3310·2019-08-26 13:36
阅读 773·2019-08-26 10:56
阅读 2565·2019-08-26 10:44
阅读 1145·2019-08-23 14:04