JS学习笔记DOM基础-首尾子节点,兄弟节点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS学习笔记DOM基础-首尾子节点,兄弟节点相关的知识,希望对你有一定的参考价值。

一、DOM节点

(1)首尾子节点

有兼容性问题

firstChild、firstElementChild

firstChild在高版本的浏览器上具有兼容问题,firstChild在高版本浏览器中指的是文本元素。

firstElementChild高级浏览器下可以使用,在IE6-8下反而不兼容。

解决兼容性的办法是使用if进行判断

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script>
window.onload = function ()
{
    var oUl=document.getElementById(‘ul1‘);
    //这个东西只能在IE6-8版本下才能用
    //oUl.firstChild.style.background=‘red‘;/*firstChild在高版本的浏览器上具有兼容问题,firstChild在高版本浏览器中指的是文本元素。*/
    
    //高级浏览器下可以使用,在IE6-8下反而不兼容
    //oUl.firstElementChild.style.background=‘red‘;
    //处理兼容问题,一般用if
    /*首先判断firstElementChild是否存在*/
    if(oUl.firstElementChild)
    {
        oUl.firstElementChild.style.background=‘red‘;
        }
    else
    {
        oUl.firstChild.style.background=‘red‘;
        }
    };
</script>

</head>

<body>
<ul id="ul1">
    <li>1</li>
    <li>2</li>
    <li>3</li>
</ul>
</body>
</html>

当然,像lastCHild、lastElementChild,以及下面的兄弟节点,也是一个德行。

(2)兄弟节点

有兼容性问题

nextSibling、nextElementSibling

previousSibling、previousElementSibling

同首位子节点来解决兼容性问题。

 







































以上是关于JS学习笔记DOM基础-首尾子节点,兄弟节点的主要内容,如果未能解决你的问题,请参考以下文章

JS学习笔记DOM基础-字节点,父节点

JS获取子节点父节点和兄弟节点的方法实例总结

JS最实用的dom节点操作大全

JavaScript基础语法-DOM,前端小白必知必会

js基础,DOM 文档对象模型

js dom操作获取节点的一些方法