js中的DOM操作(一)——查看及设置节点

一、前言

DOM 是 W3C(World Wide Web Consortium)标准。同时也 定义了访问诸如 XML 和 HTML 文档的标准:

DOM是一个使程序和脚本有能力动态地访问和更新文档的内容、结构以及样式的平台和语言中立的接口。

在HTML和JavaScript的学习中,DOM操作可谓时重中之重。今天,小编就领着大家来看看DOM操作是个什么样子!!

二、DOM节点

 DOM节点分为三大类:元素节点、属性节点、文本节点;

而我们心心念念想知道的DOM树就长酱紫!


     
     由DOM树我们可以看到,文本节点、属性节点属于元素节点的子节点。

  文本节点和属性节点就像是这颗DOM树的果子,而元素节点就是树枝,所以,在操作时,一定要要记顺枝摘果:得先取到元素节点!然后再操作子节点!!

要先取到元素节点!要先取到元素节点!要先取到元素节点!重要的事情说三遍!

 到这你就该好奇了,那该怎么顺着树枝摘果子呢,别急,小编给你带来了方法!

2.1先找树枝——获取元素节点

首先,可以用使用getElement系列方法,取到元素节点。

 下面列出一些常用的 DOM 对象方法:


     在这里,小编该介绍怎么找树枝了!

 小编先示范一遍,注意看了!

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style type="text/css">
            .div{
                width: 100px;
                height: 100px;
            }
        </style>
        <script type="text/javascript">
            window.onload = function(){
                var btn1 = document.getElementById("btn1");
                console.log(btn1);
                var is = 0;
                btn1.onclick =function  (){

                    is++;
                    if(is%2!=0){
                        var div = document.getElementsByClassName("div");
                        div[0].style = "background-color:red;color:yellow;"
//                        div[0].innerText = "hehe";
                        div[0].innerHTML = "<h2>hehe</h2>";

                    }else {
                        var div = document.getElementsByClassName("div");
                        div[0].style = "background-color:blue;color:white;"
                        div[0].innerHTML = "<h2>hahaha</h2>";
                    }

                }

            }

        </script>
    </head>
    <body>
        <button id = "btn1" class = "btn" onclick="but()">这是一个按钮1</button>
        <div class="div">hahaha</div>

    </body>
</html>

             

下面,小编开始一步步教学了!

getElementById:通过id取到唯一节点。如果id重名,只能取到第一个。

  

var btn1 = document.getElementById("btn1");
var btn2 = document.getElementById("btn1");

console.log(btn1);
console.log(btn2);

小编在上面的代码中新建了一个按钮,ID同样为“btn1”;分别通过getElementById取得了两个的元素节点,并在控制台打印;得到的结果:


        getElementsByName()  :通过name属性
        getElementsByTagName() :通过标签名;
        getElementsByClassName() :通过class名;
    上面的通过name属性、标签名和class名小编就不多说了,直接看一下怎么使用吧:

var btn1 = document.getElementById("btn1");
var className = document.getElementsByClassName("btn");
var tagName = document.getElementsByTagName("button");
var name = document.getElementsByName("btn");
console.log(btn)
console.log(className)
console.log(tagName);
console.log(name);

  
     小编提示:
     >>>获取元素节点时,一定要注意:获取节点的语句,必须在DOM渲染完成后执行
      可以有两种方式实现:①将JS代码写在body之后;②将代码写到window.onload函数之中;
     >>>后面三个getElements,取到的是数组格式。不能直接添加各种属性,而应该取出数组的每一个单独操作。
      例如:

getElementsByName("name1")[0].onclick = function;

2.2找到树枝摘果子——查看设置属性节点

接下来,小编就要介绍一下怎么摘果子了!激不激动!

首先,还记得小编提醒了三遍的事情吗?

查看和设置属性节点,必须先取到元素节点,才能使用;

1、查看属性节点:getAttribute("属性名");
     2、设置属性节点:setAttribute("属性名","新属性值");

var btn1 = document.getElementById("btn1");
var classes = btn1.getAttribute("class“);
 btn1.setAttribute("class","btn1");
console.log(classes);

小编提示:
     >>>setAttribute();函数在IE浏览器中可能会存在兼容性问题。比如在IE 中不支持试用这个函数设置style/onclick
     等样式属性和事件属性。
     
     >>>我们推荐使用符号法替代上述函数:
      eg:dom1.style.color=""  dom1.onclick=""  dom1.src=""
     
     【总结-js修改DOM节点的样式】
     1、使用setAttribute()设置class和style属性,但是存在兼容性问题,不提倡;

 div.setAttribute("class","cls1");

2、使用.className直接设置class类,注意是className而不是.class:

  div.className = "cls1";

3、使用.style设置单个属性,注意属性名要用驼峰命名法:
     div.style.backgroundColor = "red";
     4、使用.style或.style.cssText设置多个样式属性:
      div.style = "background-color:red;color:yellow;"
      div.style = "background - color:red;color:yellow" √
     3和4小编就不详细介绍了,大家可以袭击去试试!

2.3查看设置文本节点

1、.innerText:取到或设置节点里面的文字内容;
        .innerHTML:取到或设置节点里面的HTML代码;
        .tagName:取到当前结点的标签名。标签名全部大写

var div = document.getElementsByClassName("div");
div[0].style = "background-color:red;color:yellow;"
//    div[0].innerText = "hehe";
div[0].innerHTML = "<h2>hehe</h2>";


    

编者按

小编是个新手,明白前端的学习没有捷径,这次小编就先讲到这,下次继续讲解DOM操作,谢谢大家!!

时间: 2024-12-26 14:53:07

js中的DOM操作(一)——查看及设置节点的相关文章

JS中的DOM操作和事件

[DOM树节点] DOM节点分为三大类: 元素节点. 属性节点. 文本节点: 文本节点.属性节点属于元素节点的子节点.操作时,均需要先取到元素节点,再操作子节点: 可以使用getElement系列方法,取到元素节点. [查看元素节点] 1.getElementById:通过id取到唯一节点.如果ID重名,只能取到第一个. getElementsByName(): 通过name属性   getElementsByTagName(): 通过标签名   getElementsByClassName()

JS中的DOM操作怎样添加、移除、移动、复制、创建和查找节点

DOM操作怎样添加.移除.移动.复制.创建和查找节点? (1)创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个具体的元素 createTextNode() //创建一个文本节点 (2)添加.移除.替换.插入 appendChild() removeChild() replaceChild() insertBefore() //在已有的子节点前插入一个新的子节点 (3)查找 getElementsByTagName(

JS中的DOM操作

一.DOM的创建 DOM节点(Node)通常对应于一个标签.一个文本.或者一个HTML属性.DOM节点有一个noteType属性用来表示当前元素的类型,它是一个整数: 1. Element, 元素 2. Attribite, 属性 3. Text,文本 DOM节点创建最常用的便是document.createElement和document.createTextNode方法: var node1 = document.createElement('div'); var node2 = docum

js中的DOM操作汇总

一.DOM创建 DOM节点(Node)通常对应于一个标签,一个文本,或者一个HTML属性.DOM节点有一个nodeType属性用来表示当前元素的类型,它是一个整数: 1.Element,元素2.Attribute,属性3.Text,文本DOM节点创建最常用的便是document.createElement和document.createTextNode方法: var node1 = document.createElement('div');var node2 = document.create

js中的DOM操作(1)

一.操作子节点 childNodes 通过该方式可以获取父节点下的所有子节点,但是由于浏览器的差异,这写节点中可能包含文本节点. <!DOCTYPE html> <html> <head> <title>json</title> <script type="text/javascript"> window.onload = function (){ var oUl = document.getElementById

HTML5移动开发之路(36)——jQuery中的DOM操作

本文为 兄弟连IT教育 机构官方 HTML5培训 教程,主要介绍:HTML5移动开发之路(36)--jQuery中的DOM操作 1.查询 利用选择器查找节点 使用 html() / text() / attr() 输出节点文本和属性值. 注意:下拉列表使用 val() [html] view plain copy print? <html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery

第三章(jQuery中的DOM操作)

3.1 DOM 操作分类 ①DOM Core 包括(getElementById() , getElementsByTagName() , getAttribute() , setAttribute() ) //获取表单对象 docuement.getElementsByTagName("form"); //获取某元素的src属性 element.getAttribute("src"); ②HTML DOM 专属HTML_DOM属性,提供一些更简明的记号来描述各种H

dom core,html dom,css dom,jquery 中的dom操作

前端开发中为达到某种目的,往往有很多方法:dom core,html dom,jquery; dom core/jquery主要通过函数调用的方式(getAttribute("属性名")/attr("属性名"))获取属性值, html dom一般利用属性的形式(element.属性名)获取对应属性值,形式相对简洁.此外,针对于css相关的对象,还有css dom 前端开发中的节点有三种:元素节点:文本节点和属性节点 js一般对于dom core和html dom都支

锋利的jQuery ——jQuery中的DOM操作(三)

一.DOM的操作分类 1>DOM Core   2>HTML-DOM   3>CSS-DOM 二.jQuery中的DOM操作 DOM树 ①查找节点 1)查找元素节点 利用jQuery选择器来选中元素,获取元素节点. 2)查找属性节点 利用jQuery选择器查找到需要的元素后,用attr()方法来获取它的各种属性的值. ②创建节点 1>创建元素节点 创建节点利用$(html),加入元素用append()还可以连写. 2>创建文本节点 创建文本节点直接在创建的html元素里面直接