Element和Node相关方法总结

Element:

父子元素节点属性:

  • childElementCount:返回子元素节点的个数
  • children:返回当前元素的子元素节点的集合
  • firstElementChild:返回第一个子元素节点
  • lastElementChild:返回最后一个子元素节点
  • nextElementSibling:返回同级的下一个元素节点
  • previousElementSibling:返回同级的前一个元素节点

获取当前元素节点的相关属性

  • attributes:返回该元素所有属性的一个实时集合,是一个 NamedNodeMap 对象
var attrs = element.attributes;
    for(var i=attrs.length-1; i>=0; i--) {
        output+= attrs[i].name + "->" + attrs[i].value;
    }
  • classList:返回一个元素的类属性的实时集合
    • classList.add(String[,String]):为元素添加 类
    • classList.remove(String[,String]):为元素移除 类
    • classList.item(number): 按集合中的索引返回类值
    • containes(String):判断当前元素是否存在某一个 类
  • className:获取或者设置元素的class属性的值
    • var class = element.className
    • element.className = 'class01 class02 class03'
  • id:获取或设置元素的id属性的值
  • name:获取或设置元素的name属性的值,例如input元素的name值
  • tagName:获取当前元素的标签名
  • innerHTML:获取或者设置当前元素的内部内容,用此方法修改元素内部的子节点
  • innerText:获取或者修改当前元素内部的文本内容(排除了html元素)
  • outerHTML: 获取或者设置当前元素的内部内容(包括该节点)

其他的属性

  • clientHeight:元素内部高度(content+padding的高度,但不包括水平滚动条的高度)

  • scrollHeight:和clientHeight相似,包括overflow样式属性导致的视图中不可见内容

  • clientWidth

  • scrollWidth

  • scrollTop: 元素垂直方向上滚动的距离(当一个元素的容器没有产生垂直方向的滚动条,那它的 scrollTop 的值默认为0)

  • scrollLeft: 元素水平方向上的滚动距离(当一个元素的容器没有产生水平方向的滚动条,那它的 scrollTop 的值默认为0.)

  • style: 修改当前元素节点的css样式

document.body.style.background = "green";

常用方法:

  • 在其子元素节点中查找对应的元素节点:
    • getElement....():
    • querySelector...():
  • append():在其字节点的末尾添加新的节点(不一定是元素节点) 不推荐使用!!!
document.body.append("abcdefg"); // 插入文本节点
  • getAttribute():返回(参数中)指定的属性值
  • hasAttribute():判断是否有(参数中)指定的属性值
  • removeAttribute():移除(参数中)指定的属性
  • setAttribute():添加新属性或修改原有属性
HtmlNode.setAttribute('name','xin');
  • Element可以调用Node的方法和属性,但是Node不可以调用Element的方法和属性

Node

父子节点属性

  • childNodes:返回所有子节点集合(不一定都是元素节点)
  • firstChild:返回第一个子节点(不一定是元素节点)
  • lastChild:返回最后一个子节点(不一定是元素节点)
  • parentNode: 返回父节点
  • nextSibling:返回当前节点的下一个节点(不一定是元素节点)
  • previousSibling:返回当前节点的上一个节点(不一定是元素节点)
  • children:返回 子元素节点 的集合
  • parentElement:返回 夫元素节点

其他属性

  • innerText:返回其节点和子节点所包含的文字
  • nodeName:返回节点名称
  • nodeType:返回节点类型(返回节点名称对应的数字表示)
  • nodeValue:返回节点的值

方法

  • appendChild()
  • insertBefore()
  • removeChild(): 移除指定子节点,并返回该子节点
  • replaceChild(newChild, oldChild):替换指定的子节点,并返回被替换的子节点
  • cloneNode()
  • contains(node): 判断传入的节点是否是当前节点的子节点
  • hasChildNodes():判断当前节点是否有子节点
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 226,130评论 6 524
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 97,210评论 3 410
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 173,639评论 0 370
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 61,755评论 1 304
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 70,694评论 6 404
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 54,160评论 1 317
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 42,359评论 3 433
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 41,436评论 0 282
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 47,990评论 1 328
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 39,981评论 3 351
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 42,089评论 1 359
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 37,669评论 5 353
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 43,363评论 3 342
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 33,762评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 34,950评论 1 278
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 50,689评论 3 384
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 47,124评论 2 368

推荐阅读更多精彩内容