javaScript的DOM(一)

DOM是DocumentObject Model的缩写,简称文档对象模型,,先来看一下DOM树结构图:





通过 HTML DOM,可访问 JavaScript HTML 文档的所有元素。

访问HTML元素节点常用的有3种方式

1.通过 id 访问 HTML 元素

document.getElementById

2.通过标签名访问HTML 元素

document.getElementsByTagName

3.通过类名访问HTML 元素

document.getElementsByClassName

<head>

       <title></title>

       <p id="demo"class="hello">你好</p>

       <p id="test">世界</p>

       <scripttype="text/javascript">

       //id

       varp1=document.getElementById("demo");

       console.log(p1);

       var res1=p1.innerHTML;

       console.log(res1);

       //标签名

       varp2=document.getElementsByTagName("p");

       console.log(p2);

       var res2=p2[1].innerHTML;

       console.log(res2);

       //类名

       varp3=document.getElementsByClassName("hello");

       var res3=p3[0].innerHTML;

       console.log(res3);

      

      

</script>

</head>

此外用className选择元素.实现有2步

1.选出所有元素

2.通过className条件筛选

示例:将class="box"的li的背景颜色变为红色

<scripttype="text/javascript">

window.οnlοad=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>

<ulid="ul1">

       <li></li>

       <li></li>

       <li></li>

       <liclass="box"></li>

       <li></li>

       <liclass="box"></li>

       <liclass="box"></li>

       <li></li>

       <li></li>

       <li></li>

</ul>

</body>

运行结果:





封装成函数

<scripttype="text/javascript">

functiongetByClass(oParent, sClass)

{

       varaEle=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.οnlοad=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>

实现效果和之前的效果是一致的

通过dom操作 改变HTML内容

1.改变 HTML输出流

document.write("hello");

2.改变 HTML内容

document.getElementById("demo").innerHTML="51code";

3.改变HTML样式

document.getElementById("test").style.background="red";

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值