问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

js 遍历元素使之执行函数的问题

发布网友 发布时间:2022-05-14 23:14

我来回答

2个回答

懂视网 时间:2022-05-15 03:35

这次给大家带来怎样使用js Element Traversal规范元素遍历,使用js Element Traversal规范元素遍历的注意事项有哪些,下面就是实战案例,一起来看一下。

对于元素间的空格,在IE9之前,都不会返回文档节点,其它的所有浏览器都会返回文档节点。

为了兼容浏览器这间的差异,又不更改已有的DOM 标准,所以有了 Element Traversal 规范。

这个规范为 元素增加了 5 个 属性

childElementCount
firstElementChild
lastElementChild
previousElementSibling
nextElementSibling

详细官方文档; http://www.w3.org/TR/ElementTraversal/

对于元素间的空格,IE9以前的版本不会返回文本节点,而其他浏览器都会将空格当做是文本节点返回。这就导致了在使用childNodes和firstChild的属性时行为的不一致。为了弥补这一差异,而同时又保持DOM规范的不变,W3C Element Traversal规范新定义了一组属性。

Element Traversal API为DOM元素添加了下面5个属性:

  • childElementCount:返回子元素(不包括文本节点和注释)的个数。

  • firstElementChild:指向第一个子元素。

  • lastElementChild:指向最后一个子元素。

  • previousElementSibling:指向前一个同辈元素。

  • nextElementSibling:指向后一个同辈元素。

  • 支持的浏览器为DOM元素添加了这些属性,利用这些元素不必担心空白文本节点,从而可以非常方便的查找DOM元素了。

    下面是一个示例。在以前,要跨浏览器遍历某个元素的所有子元素时,需要像下面这样编写代码:

    var i,len,child = element.firstChild;
    while(child != element.lastChild){
     if(child.nodeType == 1){
     processChild(child);
     }
     child = child.nextSibling;
    }

    而使用Element Traversal新增的属性,代码就会变得非常简洁:

    var i,len,child = element.firstElementChild;
    while(child != element.lastElementChild){
     processChild(child);
     child = child.nextElementSibling;
    }

    相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

    推荐阅读:

    如何操作vue-cli项目中使用bootstrap

    如何操作Node.Js生成比特币地址

    热心网友 时间:2022-05-15 00:43

    我想原因在此:

    你上面的代码应该在onload()里的吧,当页面载入的时候
    for(var i=0;i<list.length;i++) {
    list[i].onclick=function(){
    temp[i]=i;
    textmove(temp[i]);
    alert(temp[i]);
    }
    }
    已经执行了,也就是i已经等于list.length-1了,

    当你点击list[i]时,只是执行list[list.length-1]=function(){...}
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    畅享好还是荣耀好 怎么向老师请教问题?? ...和是40.15较大数的小数点向左移动一位就等于较小的数,这两_百度知... 两个数的和是40.15,较大数的小数点向左移动一位就等于较小的数这两... 两个数的和是40.15,较大的数的小数点像向左移动一位就等于较小的数... 两个数的和是40.15,较大数的小数点向左移动一位等于较小的数 ...和是40.15较大数的小数点向左移动一位就等于较小的数这两个数分别... 怎么用手机查询农行信用卡余额? 朝阳公园附近有孩子可以托管的地方吗? 华泰证券怎么添加第二张银行卡 电脑游戏单机版下载地址 双扣单机版 姐姐要好的单机斗地主和双扣!! 网上普遍下载的那个双扣单机智商太低了,*乱炸,有没有智商高一点的双扣单机啊 有没有谁可以推荐一款比较好的80分(双扣,升级)的单机版游戏,不要联想出的那个老版本的了? 双扣的单机版下载地址 饮用水水源污染事故应急物资需要储备哪些东西,麻烦有清单的告诉我一个清单。 单反索尼A200套可拍短片吗? 高温蒸汽清洗机好用吗 用蜂蜜和牛奶可以做面膜么,起什么作用呢?怎么样才能让皮肤白皙? 杭州哪家贷款中介信誉好啊! 芝麻油能泡面膜。。泡了有什么功效没?? 谁会自制美白面膜 ?求好的自制美白面膜方法! 香油抹脸之后在敷面膜可以吗? 肤精灵晶透面膜和芝麻油调和在一起敷有什么效果? 芝麻油橄榄油哪个更适合做面膜 牛奶加芝麻油能做面膜吗? 芝麻油与蜂蜜(鸡蛋)能做面膜吗 怎么用EXCEL做问卷的数据统计 章鱼有那么多的触角,请问怎么才可以知道哪只是它的手呢? 怎么看1分钟股票行情 一分钟的走势类型是什么? 过户了房产证什么时候下来 长沙市有冻豆腐吗? 冻豆腐要去菜市场的哪里买啊 北京西南郊冷冻批发市场有没有冻豆腐 过户后几天拿到房产证 储蓄卡小额免密支付未签约能转多少钱? 手机网易可以调歌词透明度吗 华为手机能下载两个吗 螺旋尾 十字尾 浮漂哪个好? 小鱼下面发黄又在底下怎么办 仙人球上面是绿的,下面发黄了,还能活吗? 360度旋尾漂如何调漂? 如何获得淘宝新店新品的免费搜索流量扶持 刚买的栀子花,叶子有下面开始发黄干枯,怎么办?花朵也发黄? 发财树下面叶子发黄怎么办 木材的密度的体积等算怎样算呢 ViVO&#x3405;6A手机回收站系统怎么打开,怎么恢复删除的照片? 木材密度?