1、childNodes和nodeType
childnodes获取子节点,但是会把中一个标签与另一个标签的空格当做文本节点来计算。nodetype判断一个节点是什么类型的节点。只有当nodetype==1时才是元素节点,2是属性节点,3是文本节点。
2、children获取子节点,它只返回html节点,甚至不返回文本节点,虽然不是标准的dom属性,但它和innerhtml方法一样,得到了几乎所有浏览器的支持。
3、offsetparent获取该节点有定位的父元素节点。
4、firstchild()和firstelementchild(),有兼容问题,使用if来处理兼容问题。其余lastchild等的也是和这个相类似。
5、使用dom来获取元素属性,使用setattribute(‘要设置的属性’,‘设置属性的值’),removeattribute(名称),getattribute(名称),基本不常用。但也有必须用的情况。
6、使用classname来选择元素,可以封装一个简单的方法,现在这个是低版本的,没有bug,但是有很强的局限性
nbsp;html>
登录后复制 function getByClass(oParent,sClass){ //*号代表通配符 var aResult=[]; var aEle = oParent.getElementsByTagName('*'); for(var i=0;i<aEle.length;i++){ if(aEle[i].className==sClass){ aResult.push(aEle[i]); } } return aResult; } var p1 = document.getElementById('p1'); var aBox = getByClass(p1,'box'); for(var i=0;i<aBox.length;i++){ aBox[i].style.backgroundColor='red'; }
7、创建节点比如论坛功能
一定要把创建好的节点加入到他的父元素下面
creatElement()创建节点
appendChild()将创建好的节点添加到他的父元素之前
insertBefore()在某个节点之前插入
removeChild()删除某个节点
nbsp;html>创建节点 window.onload=function(){ var oUl = document.getElementById('oUl'); var oBtn = document.getElementById('btn'); var input1 = document.getElementById('input1'); var aLi = document.getElementsByTagName('li'); oBtn.onclick=function(){ var oLi = document.createElement('li'); oLi.innerHTML=input1.value; if(aLi.length>0){ oUl.insertBefore(oLi,aLi[0]); }else{ oUl.appendChild(oLi); } } }
登录后复制
相关推荐:
使用DOM的一些小结
深入JavaScript之DOM的高级应用
原生JavaScript对dom节点操作总结
以上就是js中DOM知识点分享的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2782822.html