Web前端学习:JavaScript基础 【HTML DOM操作】

2023-11-07

目录

一、认识DOM(Document)

二、查找HTML元素

1、查找HTML元素的方式 

 以id查找HTML元素为例

​编辑

window.onload方法 

三、DOM 常用事件

1、DOM常用事件表 

2、DOM 常用事件的用法

以onclick为示例

四、操作元素

1、操作元素的方式 

 2、操作元素的使用案例 

案例一 

 案例二


一、认识DOM(Document)

当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。 

JavaScript的操作本质上就是对dom进行操作


二、查找HTML元素

通常,通过JavaScript,需要操作HTML元素。
为了做到这件事情,必须首先找到该元素。有三种方法来做这件事:

  • 通过id找到HTML元素,例:document.getElementByld("isDIv");
  • 通过标签名找到HTML元素,例:document.getElementsByTagName("p");
  • 通过类名找到HTML元素 ,例:document.getElementsByClassName("intro");

1、查找HTML元素的方式 

  •  以id查找HTML元素为例

例:document.getElementByld("isDIv");

代码演示:

  • 先创建一个HTML文件,然后在head标签中写入script标签
  • script标签内声明了一个变量Div1,用这个变量来接收id为idDiv的标签中的内容 
  • console.log()是一个输出操作,在控制台中输出内容

  • 运行后,在网页检查(按下F12弹出)中控制台查看结果。结果我们发现“控制台”的输出为null值,这是什么原因呢?

原因就是在页面渲染的时候是从上到下的操作,div标签 还没加载的时候就先加载了 script标签,由于在加载 script标签 时需要用到的div标签未加载,也就是找不到div标签,所以输出为null值。

  •  如何才能获取到div标签元素并输出呢?
  • 很简单,把script标签拿下来,放在div标签后

  • 运行后再次查看控制台,控制台中有输出

不过!!!我们一般都会将script标签写在head标签里,但是写在head标签里会出现加载问题,这个怎么解决呢?这个有一种方法可以解决,那就是: 

  • window.onload方法 

window.onload 就是先加载元素,等所有元素加载完成之后再去执行这个代码里面的内容

代码演示: 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        window.onload = function () {
            var Div1 = document.getElementById("isDiv");
            console.log(Div1)
        }
    </script>
</head>
<body>
    <div id="isDiv">
        这是一个Div
    </div>
</body>
</html>
  •  运行结果


三、DOM 常用事件

1、DOM常用事件表 

属性 描述
onclick 当用户点击某个对象时调用的事件句柄
onkeydown 某个键盘按键被按下
onkeyup 某个键盘按键被松开
onload 一张页面或一副图像完成加载

2、DOM 常用事件的用法

  • 以onclick为示例

示例:设置一个“点我 ”按钮,用户点击按钮后页面会弹出一个提示框,提示内容为:Hello DOM

 

  •  运行后,鼠标点击“点我”,页面弹出提示框

  •  附上原操作代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        function f() {
            alert('Hello DOM')
        }
    </script>
</head>
<body>
    <input type="button" onclick="f()" value="点我">
</body>
</html>

四、操作元素

1、操作元素的方式 

var 变量 = 元素.属性名  (获取元素属性)

元素.属性名 = 新属性值   (修改元素属性)

属性名在js中的写法:

  • 1 、html的属性和js里面属性写法一样
  • 2、“class”属性写成“className”
  • 3、“style”属性里面的属性﹐有横杠的改成驼峰式﹐比如:"font-size”,改成"style.fontSize" 

 2、操作元素的使用案例 

  • 案例一 

用window.onload方法,在其内部通过document.getElementByld("isDIv");的方式获取input元素,然后通过 元素.事件 的方式执行”点击弹出窗口事件“

 代码演示:

  •  运行结果:

  • 附上原操作代码 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        window.onload = function () {
            var btn = document.getElementById('btn1');
            btn.onclick = function(){
                alert('Hello DOM')
            }
        }
    </script>
</head>
<body>
    <input type="button" value="点我" id="btn1">
</body>
</html>
  •  案例二

通过  var 变量 = 元素.属性名 获取span元素,并修改字体颜色

 代码演示:

 

  • 附上原操作代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        window.onload = function () {
            //获取span标签的元素
            var sp1 = document.getElementById('sp1');
            //通过 元素.属性名 = 新属性值 的方式修改属性的颜色
            sp1.style.color = 'green'
        }
    </script>
</head>
<body>
    <span id="sp1">
        这是一个span标签
    </span>
</body>
</html>

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Web前端学习:JavaScript基础 【HTML DOM操作】 的相关文章

随机推荐

  • 01-windows下载与安装neo4j

    1 因为neo4j的官网总是在变 所以下载地址有时候找不到 neo4j 3 1 0 Releases 官方下载链接 windows64 zip https neo4j com artifact php name neo4j communit
  • TCP/IP协议栈与数据包封装

    TCP IP协议栈与数据包封装 TCP IP网络协议栈分为应用层 Application 传输层 Transport 网络层 Network 和链路层 Link 四层 如下图所示 该图出自 TCPIP 图 36 1 TCP IP协议栈 两台
  • 【不是拷贝】rabbitmq安装延迟队列插件rabbitmq_delayed_message_exchange

    1 查看当前rabbitmq已安装的插件 查看当前的rabbitmq 安装了哪些插件 rabbitmq plugins list root yq test1 rabbitmq plugins list Configured E explic
  • SQL Server添加列及删除列

    SQL Server数据库添加列是我们经常要用到的操作 下文对SQL Server添加列的实现方法作了详尽的阐述 供您参考学习 AD SQL Server添加列的方法比较简单 下面就为您详细介绍SQL Server添加列及删除列的语句写法
  • “提升工作效率和多任务处理能力”,Microsoft Edge最新功能实测分享

    前言 Microsoft Edge浏览器是微软基于 Chromium 开源项目及其他开源软件开发的网页浏览器 Edge浏览器是一款现代化的浏览器 它拥有众多功能和强大的性能 为用户带来更加流畅的浏览体验 一 Edge浏览器的使用体验及优缺点
  • 华电保定计算机考研,华北电力大学(保定)计算机技术怎么样

    华北电力大学 保定 计算机技术怎么样 我们可以从以下几个方面来判断华北电力大学 保定 计算机技术怎么样 第一 华北电力大学 保定 计算机技术全国综合排名 根据浙华北电力大学 保定 计算机技术学科实力 教师水平 科研成果等多项指标 给华北电力
  • 强化学习笔记(4)-深度Q学习

    以下为学习 强化学习 原理与python实现 这本书的笔记 在之前学习到的强度学习方法中 每次更新价值函数只更新某个状态动作对的价值估计 但是有些情况下状态动作对的数量非常大 不可能对所有的状态动作对逐一更新 函数近似方法用参数化的模型来近
  • 网络协议详解:IP

    目录 两种IP地址 拆解IP地址 1 静态方式 2 动态方式 网络掩码 mask 求主机号和网络号 特殊IP地址 1 网络号 2 广播号 3 环回地址 4 内网地址 公网地址 关系 概念图 专门给内网使用的地址 同一网络的IP地址不可重复
  • Python学习-----起步2(变量与转义符)

    目录 前言 Python变量 常量使用规则 基本数据变量类型 整形 int 浮点型 float 字符串类型 str 布尔类型 bool 转义符 习题 前言 在我们学习C语言时 我们学了很多种类型的变量 有int char float dou
  • JDK版本导致Unsupported major.minor version 52.0 error

    出现问题原因 gt gt 分析 JDK版本不一致的问题 在eclipse中开发的项目有个Java build path中可以配置的JDK java compiler中可以配置compiler level eclipse gt windows
  • Docker客户端的常用命令

    搬运地址 启动Docker systemctl start docker 帮助命令 docker版本 docker version docker信息 docker info 帮助文档 docker help 此命令会列出所有Docker命令
  • Vue 中渲染字符串形式的组件标签

    在vue中如果要渲染字符串形式的标签 vue 提供了 v html 指令 可以很方便的渲染出来 但是如果这个标签是一个组件 或者element ui 的组件时 就不能解析出来了 因为v html 只能解析原生的属性 那么就要使用jsx渲染来
  • VS2005发布网站时生成的DLL名称问题

    VS2005发布网站时不会像VS2003一样生成规则的DLL文件 而生成的DLL文件名含有随机数且不能一个项目生成一个DLL文件 让人有一些遗憾 为了做到像vs2003一样 微软发布了WebDeployment Project插件可解决此问
  • 【STM32】端口复用和重映像

    作者 一只大喵咪1201 专栏 STM32学习 格言 你只管努力 剩下的交给时间 端口复用和重映像 描述 端口复用 端口复用的配置过程 端口重映像 部分重映像和完全重映像 重映像的配置过程 总结 描述 先来看一张STM32的简易结构图 在图
  • 程序员须学计算机语言,IT程序员入门必须要学会的是什么?

    IT程序员入门必须要学会的是什么 入门需要具备一定的英语基础 计算机体系结构和汇编语言 计算机操作系统原理 数据结构和算法 软件工程 Windows程序设计等相关知识点 一 具备一定的英语基础 对于初级程序员来说 英语只需要写简单的词汇就可
  • QT---FTP练习,连接FTP服务器,浏览其中的文件,下载到本地目录中

    include mainwindow h include ui mainwindow h include include include include include MainWindow MainWindow QWidget paren
  • 手机定位浅析 AGPS定位 LBS基站定位 卫星定位

    手机定位是指通过特定的定位技术来获取移动手机或终端用户的位置信息 经纬度坐标 在电子地图上标出被定位对象的位置的技术或服务 定位技术有两种 一种是基于GPS的定位 一种是基于移动运营网的基站的定位 基于GPS的定位方式是利用手机上的GPS定
  • Ubuntu rc.local 的开启与配置

    目录 rc local 简介 rc local 的配置流程 rc local 服务的管理 rc local 服务显示状态 rc local 服务的启动 rc local 服务的停止 rc local 服务使能 gt 开机依旧生效 rc lo
  • 如何在 Cockpit 中管理虚拟机

    Cockpit 是一个很将整个服务器置于一个集中的控制面板中 并对它们进行相当程度的控制 还可以在Cockpit中创建和管理虚拟机 环境 Centos8 安装Cockpit 要使用 Cockpit 创建和管理虚拟机 必须在运行 Cockpi
  • Web前端学习:JavaScript基础 【HTML DOM操作】

    目录 一 认识DOM Document 二 查找HTML元素 1 查找HTML元素的方式 以id查找HTML元素为例 编辑 window onload方法 三 DOM 常用事件 1 DOM常用事件表 2 DOM 常用事件的用法 以oncli