firstChild与firstElementChild的兼容处理
2015-11-24 10:36
435 查看
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script type="text/javascript"> window.onload=function(){ var oUl=document.getElementById('ul1'); var first=firstNode(oUl); first.innerHTML="red"; var next=nextNode(first); next.style.background="yellow"; var last=lastNode(oUl); last.style.background="red"; var prev=prevNode(last); prev.style.background="blue" function firstNode(obj){ if (!obj.firstChild) { return false }; return obj.firstElementChild || ( obj.firstChild.nodeType==1 ? obj.firstChild : nextNode(obj.firstChild) ); } function nextNode(obj){ if (!obj.nextSibling) { return false; }; return obj.nextElementSibling || (obj.nextSibling.nodeType==1 ? obj.nextSibling : nextNode(obj.nextSibling)) } function lastNode(obj){ if (!obj.lastChild) { return false; }; return obj.lastElementChild || (obj.lastChild.nodeType==1 ? obj.lastChild : prevNode(obj.lastChild) ) } function prevNode(obj){ if (!obj.previousSibling) { return false; }; return obj.previousElementSibling || (obj.previousSibling.nodeType==1 ? obj.previousSibling : prevNode(obj.previousSibling)) } } </script> </head> <body> <ul id="ul1"> 我是捣蛋的1 <li>1111111</li> <li>22222</li> <li>33333333</li> <li>4444444444</li> <li>55555555</li> <li>6666666666</li> 我是捣蛋的2 </ul> </body> </html>
相关文章推荐
- 关于JS操作DOM的一些小细节
- parentNode、firstChild
- DOM中的第一个和最后一个子节点
- 19、DOM--首尾子节点,兄弟节点的兼容性问题
- 第14课时 DOM基础概念、操作
- js中firstChild和childNodes[0]以及children[0]之间的点滴问题
- CSS选择器 first-child 、first-of-type 和 nth-of-type()
- JS firstChild,LastChild
- 关于几个和firstChild相似内容的整理
- [Cloud Networking Notes] Congestion
- 30秒为你的电脑系统清除淤塞的所有垃圾
- JRebel + Tomcat + eclipse 实现热部署
- unicode 编码在线转换工具
- linux命令学习笔记(23):Linux 目录结构
- 字符串类型
- 老骥伏枥,志在千里、用博客记录自己的学习之路 ~
- jquery解析json格式数据的方法(对象、字符串)
- 图像平滑处理
- 计算机会议综合网站
- linux下搭建svn服务端