美文网首页
Dom基础1

Dom基础1

作者: Monee121 | 来源:发表于2018-03-30 12:43 被阅读0次

DOM基础

  1. DOM简介、DOM标准、DOM节点
  2. 获取元素的子节点:childNodes、兼容性问题
    火狐不兼容,可以配合nodeType使用;nodeType=1元素节点
ul的子元素变红色;获取ul的子元素li,并且nodetype=1是元素节点
<script type="text/javascript">
window.onload=function ()
{
    var oUl=document.getElementById('ul1');
    var i=0;
    
    for(i=0;i<oUl.childNodes.length;i++)
    {
        if(oUl.childNodes[i].nodeType==1)
        {
            oUl.childNodes[i].style.background='red';
        }
    }
}

</script>
</head>

<body>
<ul id="ul1">
    <li></li>
    <li></li>
    <li></li>
</ul>
</body>
  1. 节点类型:nodeType、文本节点、元素节点
  2. children的使用
    children是childNodes的兼容版,获取子节点可以用这个
<script type="text/javascript">
window.onload=function ()
{
    var oUl=document.getElementById('ul1');
    
    alert(oUl.children.length);
}
</script>
</head>

<body>
<ul id="ul1">
    <li></li>
    <li></li>
    <li></li>
</ul>
</body>
  1. 获取元素父节点parentNode
点击隐藏把li隐藏
<script type="text/javascript">
window.onload=function ()
{
    var aA=document.getElementsByTagName('a');
    var i=0;
    
    for(i=0;i<aA.length;i++)
    {
        aA[i].onclick=function ()
        {
            this.parentNode.style.display='none';
        }
    }
}
</script>
</head>
<body>
<ul>
    <li>aass <a href="javascript:;">隐藏</a></li>
    <li>5453 <a href="javascript:;">隐藏</a></li>
    <li>cvxc <a href="javascript:;">隐藏</a></li>
    <li>ertert <a href="javascript:;">隐藏</a></li>
</ul>
</body>
  1. 获取定位元素的父节点offsetParent
    onclick="alert(this.offsetParent.tagName)" 寻找当前元素定位的东西
  2. 获取首尾子元素:firstChild、firstElementChild、lastChild、lastElementChild
<script type="text/javascript">
window.onload=function ()
{
    var oUl=document.getElementById('ul1');
    
    //IE
    //oUl.firstChild.style.background='red';
    
    //FF
    //oUl.firstElementChild.style.background='red';
    
    var oFirst=oUl.firstElementChild||oUl.firstChild;
    
    oFirst.style.background='red';
}
</script>
</head>

<body>
<ul id="ul1">
    <li></li>
    <li></li>
    <li></li>
    <li></li>
</ul>
</body>
  1. 获取兄弟节点:nextSibling、nextElemnetSibling、previousSibling、previousElementSibling
    同上
  2. 元素属性操作:“.”与“[]”回顾、setAttribute、getAttribute、removeAttribute
<script type="text/javascript">
window.onload=function ()
{
    var oTxt=document.getElementById('txt1');
    
    //1
    //oTxt.value='123';
    
    //2
    //oTxt['value']='abc';
    
    //3
    //oTxt.setAttribute('value', 'rtertw');
    
    alert(oTxt.getAttribute('id'));
}
</script>
</head>

<body>
<input type="text" id="txt1"/>
</body>
  1. 通过className获取元素、封装getByClass函数
<script type="text/javascript">
window.onload=function ()
{
    var oUl=document.getElementById('ul1');
    var aLi=oUl.getElementsByTagName('li');
    var i=0;
    
    for(i=0;i<aLi.length;i++)
    {
        if(aLi[i].className=='box')
        {
            aLi[i].style.background='red';
        }
    }
}
</script>
</head>

<body>
<ul id="ul1">
    <li></li>
    <li></li>
    <li></li>
    <li class="box"></li>
    <li></li>
    <li class="box"></li>
    <li class="box"></li>
    <li></li>
    <li></li>
    <li></li>
</ul>
</body>
封装函数
<script type="text/javascript">
function getByClass(oParent, sClass)
{
    var aEle=oParent.getElementsByTagName('*');
    var aResult=[];
    var i=0;
    
    for(i=0;i<aEle.length;i++)
    {
        if(aEle[i].className==sClass)
        {
            aResult.push(aEle[i]);
        }
    }
    
    return aResult;
}

window.onload=function ()
{
    var oUl=document.getElementById('ul1');
    var aBox=getByClass(oUl, 'box');
    var i=0;
    
    for(i=0;i<aBox.length;i++)
    {
        aBox[i].style.background='yellow';
    }
}
</script>
</head>

<body>
<ul id="ul1">
    <li></li>
    <li></li>
    <li></li>
    <li class="box"></li>
    <li></li>
    <li class="box"></li>
    <li class="box"></li>
    <li></li>
    <li></li>
    <li></li>
</ul>
</body>

相关文章

  • Dom基础1

    DOM基础 DOM简介、DOM标准、DOM节点 获取元素的子节点:childNodes、兼容性问题火狐不兼容,可以...

  • DOM基础1

    注意:案例部分代码大部分是选取关键性代码,需要把代码放入对应位置 一、DOM概念 1.JavaScript组成 (...

  • HTML DOM基础解析

    DOM基础知识 1. HTML DOM简介 DOM 是 Document Object Model(文档对象模型)...

  • JavaScript--DOM基础

    JavaScript--DOM基础 一、DOM查找方法 1.document.getElementById()语法...

  • jQuery基础(2)

    (续jQuery基础(1)) 第5章 DOM节点的复制与替换 (1)DOM拷贝clone() 克隆节点是DOM的常...

  • 19.DOM 进阶

    学习要点: 1.DOM 类型2.DOM 扩展3.DOM 操作内容 DOM 自身存在很多类型,在 DOM 基础课程中...

  • DOM基础知识

    DOM基础知识 1、DOM?页面操作 2、浏览器的兼容性?IE、FF、Chrom 3、DOM节点 1)childN...

  • per-courseDOM介绍

    DOM 文档对象模型 D 表示文档,DOM的物质基础O 表示对象,DOM的思想基础M 表示模型,DOM的方法基础...

  • DOM基础整理 - 1

    1 通过HTML DOM,可访问JavaScript HTML文档的所有元素。 2 HTML DOM(文档对象模型...

  • Vue3+TS Day19 - Vue源码理论、编译器、渲染器、

    一、Vue源码理论基础 1、DOM是什么的简称?DOM和js之间的关系? 【DOM】Document Object...

网友评论

      本文标题:Dom基础1

      本文链接:https://www.haomeiwen.com/subject/uoticftx.html