js 子节点和兄弟节点操作

元素.firstChild:只读 属性 第一个子节点

             标准下:firstChild会包含文本类型的节点

             非标准下:只包含元素节点

元素.firstElementChild:只读 属性 标准下获取第一个元素类型的子节点

方法一:



    
        
        
        
    
    
        


                
  • 1111

  •             
  • 1122

  •             
  • 1122

  •             
  • 1122

  •         

    

方法二:

var oFirst = oUl.firstElementChild || oUl.firstChild;
 oFirst.style.background = 'red';

js 子节点和兄弟节点操作_第1张图片

注意:如果ul下没有子节点,会出现问题

最佳的方法:

if(oUl.children[0]){
                    oUl.children[0].style.background = 'red';
                }else{
                    alert('没有子节点可以设置');
                }



    
        
        
        
    
    
        


                
  • 1111111111

  •             
  • 1111111111

  •             
  • 1111111111

  •             
  • 1111111111

  •         

    

js 子节点和兄弟节点操作_第2张图片

上面这种写法还是会存在问题,例如最后一个li的nextSibling下一个兄弟节点,是文本节点,文本节点没有background,就会 出错。

 

你可能感兴趣的:(js2)