前端(day04)DOM、BOM、Api和内置对象

配置 Druid 数据源及密码加密-SpringBoot 实战基础 在SpringBoot中配置 Druid 数据源及密码加密的方法前文集成 MyBatis Plus,实现了一组增删改查接口。在启动服务时,从控制台中可以看出 Spring Boot 默认使用 Hikari 作为数据库连接池,Hikari性能很优秀。在国内使用较多的连接池还属阿里开源的 Druid,中文发音为德鲁伊。Druid 结合了 C3P0、DBCP 等 DB 池的优点,同时还加入了日志监控,可以很好的监控 DB 池连接和 SQL 的执行情况。... 阅读详情

DOM:

概念:Document Object Model 文档对象模型,作用:操作标记性文档(目前学过的xml,html文档)在这里插入图片描述

Dom分类

  1. 核心Dom(ECMA规范的基本语法)

    核心Dom的api操作xml,html

  2. xml的Dom

    作用:操作xml文档的

  3. html的Dom

    作用:操作html文档的

  4. 总结:

    核心Dom, xml的Dom, html的Dom 大部分api都是通用的

Dom的api 在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		 密码:<input type="password" name="psw"  /><br/>
		用户名:<input type="text" name="username" id="uname" class="s" /><br/>
		性别:<input type="radio" name="sex" class="s"  value="man"/>男
				<input type="radio" name="sex"  class="s" value="woman"/>女<br/>
				
		<script type="text/javascript">
			var username_tag=document.getElementById("uname");
			document.write(username_tag.name+"<hr/>"); 
			var input_tag=document.getElementsByTagName("input");
			document.write(input_tag.length+"<hr/>");
			var sex_objects=document.getElementsByName("sex");
			document.write(sex_objects);
			var classname=document.getElementsByClassName("s");
			document.write(classname);
		</script>
	</body>
</html>

Dom操作文本

获取文本:innerhtml

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<div id="d1">
			我是小鸟
		</div>
		<script type="text/javascript">
			var div_tag=document.getElementById("d1");
			document.write(div_tag.innerHTML);
			div_tag.innerHTML="我是小老虎"
			document.write(div_tag.innerHTML);
		</script>
	</body>
</html>

事件

事件与事件源的绑定

方式一:直接绑定(直接在标签里面定义事件属性,绑定对应的js代码)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<input type="button" value="普通按钮1" onclick="top1()"/>
		
		<script type="text/javascript">
			function top1(){
				console.log("11111");
			}
		</script>
	</body>
</html>

方式二:间接绑定(不在标签里面定义事件属性,在使用时在绑定)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<button type="button">普通按钮2</button>
		<script type="text/javascript">
			var tags=document.getElementsByTagName("button");
			var singalTag=tags[0];
			singalTag.onclick=function(){
				console.log(2222);
			}
		</script>
	</body>
</html>

常用的事件:

onchange: 在内容改变时,触发该事件,常与select一起使用

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>在下拉选择框里面直接绑定内容切换</title>
	</head>
	<body>
		<select onchange="changeContest()">
			<option value="">plase choose</option>
			<option value="">河南省</option>
			<option value="">河北省</option>
		</select>
		<script type="text/javascript">
			num=0;
			function changeContest(){
				console.log(num);
				num++;
			}
		</script>
	</body>
</html>

onload: 等html网页完全加载完毕后,才执行事件里面的js代码,所以把代码可以放在head里面

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			function t2(){
				var divTag=document.getElementById("p");
				var div_text=divTag.innerHTML;
				console.log(div_text);
			}
		</script>
	</head>
	<body onload="t2()">
		<div id="p">
			互相进步
		</div>
	</body>
</html>

BOM:

概念:

BOM : browser object module,浏览器对象模型(一系列对象,构成模型),操作浏览器的.

BOM里面包含的五个对象

window:表示窗口对象,同时也是bom的顶层对象(可以通过window对象获取其它四个bom对象)

location:表示地址栏对象,操作地址栏的地址(获取地址栏的地址或者改变地址栏的地址)

history:表示用户访问过的前后的历史记录,操作用户访问过的历史记录

screen:表示网页的屏幕带下,操作网页的大小(分辨率,比如1366*768)

navigator:表示浏览器对象, 获取浏览器的相关参数信息(比如:使用的是那个浏览器,版本号是多少)

在这里插入图片描述

 常用API:

window的open()和close()

<input type="button" value="开启一个新窗口" onclick="openW();"/>
     <input type="button" value="关闭一个新窗口" onclick="closeW();"/>
    
     <script>
        //1开启一个新窗口
        function openW(){
        	//wid: 表示新的窗口对象
        	window.open("http://www.baidu.com");
        }
        //2.关闭一个新窗口
        function closeW(){
        	//开谁,关闭谁
        	window.close();
        }
    </script>

location使用:location.href

<body>
		    <input type="button" value="获取窗口的地址" onclick="getPath();" />
			<input type="button" value="改变窗口的地址" onclick="changePath();" />
			<script type="text/javascript">
				//1.获取地址
				function getPath(){
					//var loc = window.location;
					//var path = loc.href;
					var path = location.href;
					document.write(path);
				}
				//2.改变地址
				function changePath(){
					//location.href="https://www.baidu.com";
					//location.href="index.html";
					location.href="http://127.0.0.1:8020/javascript_high1/index.html";
				}
				
			</script>
	</body>

练习:省市二级联动:

需求:点击省份数据,显示市区数据       

出现错误:option value=""时,应该把value=""去掉

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		省:<select id="p">
			<option>请选择</option>
			<option value="1">山西省</option>
			<option value="2">陕西省</option>
		</select>
		市:<select id="c">
			<option>请选择</option>
		</select>
		<script type="text/javascript">
			document.getElementById("p").onchange=function(){
				var province=this.value;
				var city=document.getElementById("c");
				if(province==1){
					var data="<option>请选择</option>"+
					"<option>太原</option>"+
					"<option>大同</option>";
					city.innerHTML=data;
				}else if(province==2){
					var data="<option>请选择</option>"+
					"<option>西安</option>"+
					"<option>安溪</option>";
					city.innerHTML=data;
				}
			}
		</script>
	</body>
</html>

常见的内置对象

Global全局对象

全局对象:javascript内置的对象(这个对象的名称是Global: 只有名称,没有”真人“)

特点: 调用方法时,全局对象省略不写

常用方法:

eval(): 计算 JavaScript 字符串,并把它作为脚本代码来执行。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			var a="document.write(1111)";
			eval(a);
		</script>
	</body>
</html>

isNaN():检查某个值是否是数字。不是数字返回false

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			var a=10;
			document.write(isNaN(a));
		</script>
	</body>
</html>

parseFloat():解析一个字符串并返回一个浮点数

parseInt():解析一个字符串并返回一个整数。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			var num="da101";
			document.write(typeof(num));
			document.write(num);
			var num1=parseInt(num);
			document.write(typeof(num1));
			document.write(num1);
		</script>
	</body>
</html>

Math对象

常用方法

floor();"地板方法"向下取整,比如: 5.9–>向下取整 5

ceil();"天花板方法"向上取整,比如:5.01–>向上取整6

round();四舍五入的方法

random();随机数,范围[0,1);包含0,不包含1,可以随机出小数

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			var n1=Math.random()*6;
			document.write(n1);
		</script>
	</body>
</html>

JSON对象

概念:JSON(JavaScript Object Notation):是一种轻量级的数据交换格式。

特点:1.数据量小   2.比较直观

作用:在浏览器与服务器之间交换数据

对象的定义及遍历:

第一种:单个json对象

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			var user={"id":1,"name":"jack"};
			document.write(user.id+":"+user.name)

		</script>
	</body>
</html>

第二种:json数组对象

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			var user=[{"id":1,"name":"jack"},{"id":2,"name":"rose"},{"id":3,"name":"ship"},]
			for (var i = 0; i < user.length; i++) {
				var p=user[i];
				document.write(p.id+":"+p.name);
			}
		</script>
	</body>
</html>

复杂的json对象

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			var user={"马牛逼":{"age":1,"sex":"nan"}};
			var casUser=user.马牛逼;
			var casUserId=user.马牛逼.age;
			document.write(casUserId);
		</script>
	</body>
</html>

JAVAScript面向对象

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			class Demo{
				//成员变量
				num=0;
				//构造器
				constructor(num){
					this.num=num;
				}
				//方法
				test(){
					document.write(this.num);
				}
			}
			//创建对象
			var demo=new Demo(1000);
			demo.test();
		</script>
	</body>
</html>

基于注意力机制的行人重识别(Reld)模型论文解读----Relation-Aware Global Attention for Person Re-identification 任务概述:在多摄像头的复杂场景中,快速定位查找指定目标的所有结果。 阅读详情

相关推荐

阿里云大模型 ACP 认证教材内容突变?这些改动藏着通关密码,不看亏大!

【摘要】核心章节大换血,安全合规融入实战场景,大模型微调用数学深度解析,部署章节带来阿里云产品对比实战攻略,甚至整章内容被替换成藏满学习彩蛋的行业趋势指南。这些改动不仅重塑考试重点,更暗藏官方命题风向——安全合规考场景方案,微调原理考几何解析,部署设计考分析框架。无论你是数学小白还是部署新手,这篇攻略都将带你吃透变动逻辑,附赠急救包和考点清单,帮你抓住这些“隐形加分项”,速来解锁通关秘籍!

davidkorhenn的博客 1755

JavaScript学习:内置对象,DOM模型,BOM模型,事件编程

快速掌握JavaScript的中级知识

lilcur的博客 1031

TensorRT(C++)部署 Pytorch模型

众所周知,python训练pytorch模型得到.pt模型。但在实际项目应用中,特别是嵌入式端部署时,受限于语言、硬件算力等因素,往往需要优化部署,而tensorRT是最常用的一种方式。本文以yolov5的部署为例,说明模型部署在x86架构上的电脑端的流程。(部署在Arm架构的嵌入式端的流程类似)。

女神sha手的博客 5405

前端学习——Web APIs (DOM+BOM)

Pink老师,Web APIs学习笔记,包含BOM和DOM的基础知识。

weixin_57896572的博客 1786

C#实战:如何用winmm.dll打造毫秒级高精度定时器(附完整代码)

本文详细介绍了在C#中利用winmm.dll实现毫秒级高精度定时器的完整方案。针对.NET内置定时器精度不足的问题,通过调用timeSetEvent等原生API,提供了超越系统时钟中断周期的精准定时能力。文章包含核心原理剖析、完整的封装类代码以及音视频处理、游戏开发等场景下的实战应用与性能调优指南。

ujm5678901的博客 690

Keil环境下单片机串口通信实战:如何用printf发送中文(附完整代码)

本文详细解析了在Keil开发环境下,单片机通过串口通信发送中文信息时产生乱码的根本原因及解决方案。核心在于理解并统一编码(如GB2312或UTF-8),并正确重定向printf函数。文章提供了针对STC89C52和STM32F103的完整代码示例,涵盖工程配置、编码设置、调试技巧,帮助开发者实现稳定可靠的中文串口输出。

weixin_29168675的博客 467

04js基础 内置对象 DOM与BOM

js的对话框: 1.警告框(alert)--出现一个提示信息 2.询问框(prompt)--返回输入的值 var username = prompt("请输入你的名字"); document.write("你好"+username); 3.确认框(confirm)--根据不同的选择,返回true/false js内置对象 1.this--指当前对象//即当前标签对象 2.for...

好记性不如烂笔头 566

FICO F.27 Customer statement 打印

需求,定制化打印,替换标准的F.27打印 类似于采购订单的打印,但是略有不同,查阅资料之后步骤如下: T-code F.27 is SAP standard program to produce customer/vendor correspondence (letter). Correspondence Type is used to specify the related printing program and form for the particular correspondence. SAP

IamRunjiang的博客 1965

什么是 web API? DOM和BOM

一、API和Web API API(Application Programming Interface ,应用程序API):是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或者硬件得以访问一组例程的能力,二又无需访问源码,或理解内部工作机制的细节。 是给程序员提供的一种工具,以便能够更轻松的实现想要完成的功能。 Web API 是浏览器提供的一套操作浏览器功能和页面元素的API(BOM和DOM) 主要针对浏览器提供的借口,主要针对浏览器做交互效果。 二、什么是DOM DOM,

计算机小白学前端~ 1290

华为云Stack 8.X 流量模型分析(一)

​ 当内部需要提供对外服务时(如对外发布Web网站),外部地址发起主动连接,由路由器或者防火墙上的网关接收这个连接,然后将连接转换到内部,此过程是由带有公网IP的网关替代内部服务来接收外部的连接,然后在内部做地址转换,此转换称为DNAT,主要用于内部服务对外发布。​ 内部地址要访问公网上的服务时(如Web访问),内部地址会主动发起连接,由路由器或者防火墙上的网关对内部地址做个地址转换,将内部地址的私有IP转换为公网的公有IP,网关的这个地址转换称为SNAT,主要用于内部共享IP访问外部。

Ciyaso的博客 3244

CANoe制作网关实现CAN(FD)报文故障注入(报文长度/timeout/信号错误/E2E)2

CANoe制作网关实现CAN报文故障注入(报文长度/timeout/信号错误/E2E) 2.新建CANoe工程 3.透传功能 4.故障注入panel面板 5.CAPL代码 5.1故障注入开始、停止、定时 5.2DLC故障注入 5.3 Timeout故障注入 5.4 信号故障注入

天赐好车的博客 3676

BOM对象以及常用的API

BOM(Browser Object Module)浏览器对象模型 BOM对象包括:Window、History、Navigator、Screen和Location Navigator navigator.userAgent是我们经常使用的属性,它可以返回客户端的代理值。用这个我们就可以判断当前用户使用的是pc端还是移动端,是什么浏览器。 Screen screen.availHeight/ava...

Maix_Y的博客 470

如何使用 Python 爬虫获取猫眼电影数据:电影评分与评论分析

随着互联网的快速发展,越来越多的人开始使用各种在线平台来了解电影信息,猫眼电影作为一个非常流行的在线电影票务平台,提供了详细的电影评分、评论和票房数据。本篇博客将详细介绍如何使用 Python 爬虫技术获取猫眼电影平台上的电影数据,重点关注电影评分和用户评论的爬取,分析其背后的数据处理和反爬虫技术。如果你对数据分析、电影评论分析等话题感兴趣,可以根据本文的示例进一步深入挖掘更多的数据,为决策提供支持,或为电影产业的相关研究提供有价值的分析依据。有些猫眼电影的页面数据是动态加载的,使用。

2201_76125261的博客 1623

05 JavaScript核心之Web APIs DOM BOM

学完JavaScript基础,我们就可以学习JavaScript核心 DOM 和 BOM操作了,真正体会JavaScript的魅力,这里我们会讲解如何获取DOM元素,如何操作DOM 元素,BOM操作, 事件,事件对象,事件委托,JS执行队列,定时器,常见网页特效,比如轮播图,tab栏切换等。 还会讲解移动端如何制作网页特效,带你进入JavaScript的实际开发应用。

maiblog 271

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

day04 JavaScript高级笔记

今日内容: 1. JavaScript: 1. ECMAScript: 2. BOM: 3. DOM: 1. 事件 DOM简单学习:为了满足案例要求 * 功能:控制html文档的内容 * 获取页面标签(元素)对象:Element * document.getElementById("id值"):通过元素的id获取元素对象 ​ * 操作Ele...

IT学院 131

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

javascript day1

通常所说的Javascript是应用在浏览器中,一般包括ECMAScript、DOM、BOM。 ECMAScript为标准,DOM为浏览器提供的js操作html/css的Js api,BOM为浏览器提供的js操作浏览器的Js api。而Javascript如果应用在nodejs中,则通常用于服务器端编程,可以进行io操作,网络操作等。 特点 客户端代码,在客户机上执行 1.JavaScript特殊的地方在于它也可以作为服务器端代码执行,但是需要搭建Node环境。node hello.js 2.在浏览器上运行

qq_58614993的博客 203

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

day04_HTML BOM学习总结笔记

03浮动广告:       function  moveImage(){             document.getElementById("ad1").style.left=Math.random()*500+"px";//可以使用这个语句修改标签的样式             document.getElementById("ad1").style.top =Math.rand

Yan_JandM的专栏 341

大前端学习笔记-day01-HTML

HTML学习笔记-day01 1. 大前端课程体系 三要素:HTML CSS Javascript 1) 重构 html5 3天 3小时 css3 10天 项目驱动,项目内容融入到授课中(网易严选首页) 2)dom驱动阶段 linux操作系统 5天 mac系统、ubuntu16.04(8G + 固态硬盘)、阿里云服务器(腾讯云、百度云)10元/月 js、jav...

qq_41692467的博客 850

JavaScript应用(day01:DOM获取&属性操作)

JS应用中DOM获取&属性操作

weixin_51591826的博客 1428

2023年的一份前端学习路线(仅供参考)

1.前端核心基础 【 js基础 Day1】js的介绍及基本语法变量,运算符 【 js基础 Day2】js的流程控制:分支语句,循环.顺序结构 【 js基础 Day3】关键字的使用,数组(重点)和函数(重点) 【 js基础 Day4】面向过程,面向对象,自定义对象,内置对象 【 js基础 Day5】函数(重点),作用域,预解析,arguments,对象 【 js基础 Day6】内置对象和基本包...

你若盛开,清风自来 4802

day04 JavaScript高级程序设计 阅读总结

《JavaScript高级程序设计》(第四版)阅读总结 额,据说这本是前端er必看书籍,花了20个小时简单把这本书过了一下,目前暂时很少用到的东西我这一遍就没有过了,等以后要用的时候再回来继续学了。 先来谈谈这本书的缺点,书籍前面章节用到了一些后面才讲到的东西,比如第三章讲symbol对象时,就用到了后面才讲的iterator和generator。然后就是感觉讲的有点太广了,而且基本没有课后习题,看过就是看过了,顶多自己花时间把书里面的例子都敲一遍。所以我建议应该和现代JavaScript教程一起食用。 反

weixin_49172439的博客 1835

自学Node.js笔记(day01)

01 初识 Node.js 1.回顾与思考 1.回顾浏览器中的 JavaScript 的组成部分 2.为什么 JavaScript 可以在浏览器中被执行 不同的浏览器使用不同的 JavaScript 解析引擎: Chrome 浏览器 => V8 Firefox 浏览器 => OdinMonkey(奥丁猴) Safri 浏览器 => JSCore IE 浏览器 => Chakra(查克拉) etc... 3.为什么 JavaScript 可以...

bobiii的博客 261

11-vue_day01

day01内容 回顾 网页重构 【根据设计师/产品经理绘制的原型效果(axure、psd)重构出兼容性良好网页】 HTML5 标签(结构) 1.块级标签 div 无意义的块元素 p 默认样式,在应用的时候一般都会被重置!纹眉 h1~h6 ul>li ol>li dl>dt,dd H5新增了一系列的块级标签(语义化标签)- 与div表现效果是一样的 header、article、footer、nav、section、aside、address… 2.行内标签 span 装

hanmiao12345的博客 224

HTML的入门笔记

大前端新手笔记第一课 第一节课: 大前端行业(vue/react/angular)【Java->大前端】【全栈】。神经网络学(高数)人工智能。 iphone 富士康 组装(高级技工)【大前端高级技工培训班】- 本科 苹果公司 指纹识别,sari【大数据、人工智能AI】-研究生(985+) 大前端方向 大前端方向经理授课 就业数据 (平均薪资高于后台) 项目多,后台接口 乐趣性 课程体系 一、重构(html5、css3、网易严选、京东…-> 自己实现) 二、dom驱动(linux、ja

YJ2020531的博客 337

黑马程序员JavaWeb开发教程,实现javaweb企业开发全流程(涵盖Spring+MyBatis+SpringMVC+SpringBoot等)

感谢黑马,感谢努力的自己,终将成为黑马。

qq_69325307的博客 7010

TypeScript-day03

今天几乎所有的 JavaScript 应用都会引入许多第三方库来完成任务需求。这些第三方库不管是否是用 TS 编写的,最终都要编译成 JS 代码,才能发布给开发者使用。我们知道是 TS 提供了类型,才有了代码提示和类型保护等机制。但在项目开发中使用第三方库时,你会发现它们几乎都有相应的 TS 类型,这些类型是怎么来的呢?

qq_42385494的博客 826
上一篇: 前端(day03)JS
下一篇: 前端(day05)Vue,Vue的钩子函数created:
五八个
博客等级 码龄8年 638粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值