JavaScript DOM和BOM

2023-11-13

目录

查找html元素

1.通过id

2.通过标签名

3.通过类名

DOM 

1.创建动态的HTML内容

 2.修改元素内容

3.改变HTML属性 

4.改变css样式

DOM事件 

DOM节点

1.添加HTML元素

2.删除HTML元素

浏览器对象

 1.Window对象

 2.Screen对象

3.History对象

 4.Location对象

5.Navigator对象


 

查找html元素

1.通过id

//根据id名称获取元素对象

var test = document.getElementsById("test");

//获取元素内容

var result = test.innerHTML;

2.通过标签名

//查找所有的段落元素<p>并获取第一个段落标签内部的文本内容

var p = document.getElementByTagName("p");

var result = p[0].innerHTML;

3.通过类名

document.getElementsByByClassName("类名");

DOM 

1.创建动态的HTML内容

<!DOCTYPE html>
<html>
	<head>
    	<meta charset="utf-8">
        <title>创建动态的HTML内容</title>
    </head>
    <body>
    	<h3>JavaScript DOM动态创建内容</h3>
        <script>
			var date = new Date();
			document.write("本段文字为动态生成。"+date.toLocaleString());
		</script>
    </body>
</html>

 2.修改元素内容

<!DOCTYPE html>
<html>
	<head>
    	<meta charset="utf-8">
        <title>修改元素内容</title>
    </head>
    <body>
    	<h3>修改元素内容</h3>
        <p id="test">World</p>
        <script>
			var p = document.getElementById("test");
			var msg = p.innerHTML;
			p.innerHTML = "<strong>Hello</strong>";
			alert("段落元素的初始内容是:\n"+msg);
		</script>
    </body>
</html>

3.改变HTML属性 

var img = document.getElementById("image");

img.src = "image/1.jpg";

4.改变css样式

var p = document.getElementById("test");

p.style.backgroundColor = "blue";

DOM事件 

onabort 图像加载过程被中断
onblur 元素失去焦点
onchange 域的内容被改变
onclick 元素被鼠标左键单击
ondbclick 元素被鼠标左键双击
onerror 加载文档或图像时发送错误
onfocus 元素获得焦点

onkeydown

键盘按键被按下
onkeypress 键盘按键被按下并松开
onkeyup 键盘按键被松开
onload 页面或图像加载完成
onmousedown 鼠标按键被按下
onmousemove 鼠标被移动
onmouseout 鼠标从当前元素上移走
onmouseover 鼠标移动到当前元素上
onmouseup 鼠标按键被松开
onreset 重置按钮被单击
onresize 窗口或框架的大小被更改

onselect

文本被选中
onsubmit 提交按钮被单击
onunload 退出页面

DOM节点

1.添加HTML元素

//创建新的元素

var box = document.createElement("div");

//设置新元素的背景颜色为黄色

box.style.backgroundColor="yellow";

//设置新元素的内容

box.innerHTML="这是动态添加的div元素。";

//将新创建的元素添加id="container"的段落元素中

p.appendChild(box);

2.删除HTML元素

//获取父元素

var test = document.getElementById("test");

//获取子元素

var p = document.getElementById("p01");

//删除子元素

test.removeChild(p);

浏览器对象

 1.Window对象

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8"/>
    <title>Window对象</title>
</head>
<body>
	<h3>Window对象</h3>
    <script>
		var width = window.innerWidth;
		var height = window.innerHeight;
		document.write("浏览器当前可用宽度为:"+width+"<br>浏览器可用高度为:"+height);
	</script>
</body>
</html>

 2.Screen对象

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8"/>
    <title>Screen对象</title>
</head>
<body>
	<h3>Screen对象</h3>
    <script>
		var width = screen.availWidth;
		var height = screen.availHeight;
		document.write("屏幕当前可用宽度为:"+width+"<br>屏幕可用高度为:"+height);
	</script>
</body>
</html>

3.History对象

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8"/>
    <title>History对象</title>
</head>
<body>
	<h3>History对象</h3>
    <button onClick="history.back()">后退</button>
    <button onClick="history.forward()">前进</button>
</body>
</html>

 4.Location对象

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8"/>
    <title>Location对象</title>
</head>
<body>
	<h3>Location对象</h3>
    <script>
		location.href = "http://www.baidu.com";
	</script>
</body>
</html>

 

5.Navigator对象

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8"/>
    <title>Navigator对象</title>
</head>
<body>
	<h3>Navigator对象</h3>
    <script>
		var mag = "浏览器代码名:"+navigator.appCodeName;
		msg+="<br><br>浏览器名称:"+navigator.appName;
		msg+="<br><br>浏览器版本:"+navigator.appVersion;
		msg+="<br><br>浏览器是否允许使用:"+navigator.cookieEnabled;
		msg+="<br><br>浏览器所在操作系统:"+navigator.platform;
		msg+="<br><br>用户代理:"+navigator.userAgent;
		msg+="<br><br>浏览器语言:"+navigator.language;
		msg+="<br><br>浏览器品牌:"+navigator.vendor;
		document.write(msg);
	</script>
</body>
</html>

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

JavaScript DOM和BOM 的相关文章

随机推荐

  • ZooKeeper数据存储与数据同步机制

    ZooKeeper中 数据存储分为两部分 内存数据 ZKDatabase 与磁盘数据 事务日志 事务快照 ZKDatabase ZooKeeper的数据模型是一棵树 而从使用角度看 ZooKeeper就像一个内存数据库一样 在内存数据库中
  • 损失函数(loss function)(基本介绍,作用,场景,特点,常见损失函数,代码示例)

    一 损失函数是什么 损失函数 Loss Function 是机器学习和深度学习中的一个重要概念 用于衡量模型预测结果与真实结果之间的差异或误差 它是一个数值评估指标 通过对模型输出和真实标签之间的比较 提供了对模型性能的度量 二 损失函数的
  • 时序预测

    时序预测 MATLAB实现基于BiLSTM双向长短期记忆神经网络的时间序列预测 递归预测未来 多指标评价 目录 时序预测 MATLAB实现基于BiLSTM双向长短期记忆神经网络的时间序列预测 递归预测未来 多指标评价 预测结果 基本介绍 程
  • 100流明相当于多少w_1978年的100元, 相当于现在的多少钱? 答案“出乎意料”...

    点上面蓝色字免费关注 如今的钱是越来越不值钱 每个月四五千的工资在没有负债的情况下 也就刚好够家庭使用 如果有房贷车贷等其他负债 四五千的工资根本就养不活一个家 很多人都怀念七八十年代的生活 一个月几十元工资就能养活一家人而且还没有什么生活
  • maven 打包时异常 <找不到符号 [ERROR] 符号: 方法>

    被依赖项目没有打包到本地仓库 或者没有上传到远程仓库 ERROR Failed to execute goal org apache maven plugins maven compiler plugin 3 3 compile defau
  • 从0到1开发一个React组件库

    背景 前端技术的不断发展过程中 组件化 模块化已成为主流 当开发的项目中有一些公共组件可以沉淀的时候 将这些组件抽离出来 开发一个组件库无疑是一个好的选择 那么怎么去开发一个组件库呢 本文将和你一起从零开发一个 React 组件库 本文项目
  • C#中定义数组

    一 一维 int numbers new int 1 2 3 4 5 6 不定长 int numbers new int 3 1 2 3 定长 二 多维 int numbers new int 1 2 3 1 2 3 不定长 int num
  • C语言——打鱼晒网问题

    一 实例说明 如果一个渔夫从 2011 年 1 月 1 日开始每三天打一次渔 两天晒一次网 编程实现当输入 2011 年1月1日以后的任意一天 输出该渔夫是在打渔还是在晒网 二 实现代码 include
  • SCORE-BASED GENERATIVE MODELING THROUGH STOCHASTIC DIFFERENTIAL EQUATIONS 阅读笔记

    文章提出了一个基于随机微分方程的生成模型 Denoising Score Matching with Annealed Langevin Sampling SMLD 和 Denoising Diffusion Probabilistic M
  • prometheus + grafana 实时监控 Windows性能

    Prometheus 实时监控 Windows性能 Prometheus 简介 Prometheus 具有以下特点 Prometheus 组件 Prometheus功能特性 在业务层用作埋点系统 在应用层用作应用监控系统 在系统层用作系统监
  • 在运用tf_ops算子时出现InvalidArgumentError (see above for traceback): No OpKernel was registered to support

    在运用tf ops算子时出现InvalidArgumentError see above for traceback No OpKernel was registered to support Op FarthestPointSample
  • C++从入门到放弃之:C++ 模板之自制容器

    自制链表容器 1 include
  • DNS递归查询和迭代查询的区别

    1 递归查询 递归查询是由DNS 服务器主动帮主机查询的查询模式 在该模式下本地DNS 服务器接收到主机的请求 如果本地DNS 服务器没有存储相关的DNS 信息 那么该DNS 服务器会询问其他DNS 服务器 以此类推 最后不管成功与否 都将
  • 2020ciscn wp

    目录 1 签到电台 2 基于挑战码的双向认证 1 2 3 web Ezpo 4 基于挑战码的双向认证3 5 ISO9798 6 问卷调查 7 ez usb 8 login nomal 1 签到电台 操作内容 根据公众号提示 知道了模十的算法
  • SeleniumLibrary4.5.0 关键字详解(八)

    SeleniumLibrary4 5 0 关键字详解 八 库版本 4 5 0 库范围 全局 命名参数 受支持 简介 SeleniumLibrary是Robot Framework的Web测试库 本文档说明了如何使用SeleniumLibra
  • Zigbee协议栈(CC2530开发板) 修改发射功率

    Zigbee协议栈 CC2530开发板 修改发射功率 2010 12 07 15 11 43 分类 Zigbee 标签 zigbee 协议栈 发射功率 字号 订阅 CC2530 控制输出功率的寄存器是 TXPOWER 推荐功率设置 协议栈默
  • 矩阵求导——Numerator Layout & Denominator Layout

    突然想起这个问题了 刚刚看到有人在问某个的公式 自己闷头想了想居然都忘的差不多了 于是乎稍微整理一下供以后参考 其实 关于矩阵求导讲的最详细的还是wiki上的页面面http en wikipedia org wiki Matrix calc
  • 【janio】janio 官网 翻译 Janino 是一个超小、超快的 Java 编译器

    1 概述 翻译 http janino compiler github io janino janino as a 20compiler Janino 是一个超小 超快的 Java 编译器 Janino不仅可以像JAVAC一样将一组源文件编
  • Echarts特殊用法总结

    最近做了一个微信公众号项目 使用Echarts绘制降雨量曲线 水库水位及库容曲线 大坝断面监测等图表 通过查阅官方文档及示例 度娘 与Echarts的距离更近了一步 总结一下 不能直接在官网上找到答案的用法 有以下几处 x轴为value类型
  • JavaScript DOM和BOM

    目录 查找html元素 1 通过id 2 通过标签名 3 通过类名 DOM 1 创建动态的HTML内容 2 修改元素内容 3 改变HTML属性 4 改变css样式 DOM事件 DOM节点 1 添加HTML元素 2 删除HTML元素 浏览器对