JavaScript WebApi(二) 详解

监听事件

介绍

事件监听是一种用于在特定条件下执行代码的编程技术。在Web开发中,事件监听器可以用于捕获和响应用户与页面交互的各种操作,如点击、滚动、输入等。

事件监听的基本原理是,通过在特定元素上注册事件监听器,当事件在该元素上触发时,相应的处理函数会被执行。以下是事件监听的基本步骤:

  1. 选择要监听事件的元素:可以使用JavaScript中的document.getElementById()document.getElementsByClassName()等方法,或者使用现代的JavaScript库和框架(如jQuery、React等)提供的选择器来选择要监听事件的元素。

  2. 注册事件监听器:使用元素的addEventListener()方法来注册事件监听器,该方法接受两个参数:要监听的事件类型和事件发生时要执行的处理函数。例如:element.addEventListener('click', handleClick)

  3. 编写事件处理函数:根据需要编写处理函数,它会在事件触发时被调用。处理函数可以接收一个事件对象作为参数,其中包含了与事件相关的信息,例如触发事件的元素、鼠标位置等。

  4. 执行相应的操作:在事件处理函数中编写代码来执行想要的操作,例如修改页面内容、发送请求、更新数据等。

  5. 可选:注销事件监听器。如果不再需要监听某个事件,可以使用removeEventListener()方法来注销事件监听器,以释放资源。例如:element.removeEventListener('click', handleClick)

推荐写法:

页面加载事件

加载外部资源(如图片,外链css和JavaScript)加载完毕时触发的事件。

基本使用:当我们需要实现只有资源显示的时候才执行对应步骤的效果时,可以使用页面加载事件(load)比如说当打开一个小说网站的时候,章节还没有加载完成,如果这时候鼠标一通乱点可能会执行一些用户不想要执行的事件,或导致体验感很差。

这边举一个常见的渲染案例。

效果展示:

代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title></title><style>*{padding:0;margin:0;box-sizing: border-box;}ul {width: 650px;}li{margin:10px;float: left;list-style: none;width: 100px;height: 100px;background-size: cover;transition: all .4s;}li:hover{transform: scale(1.2);border: 1px solid #ccc;box-shadow: 0 0 10px rgba(1,1,1,0.5);}</style>
</head>
<body><div class="main"><ul></ul></div><script>const ul = document.querySelector('.main ul')for(let i = 1 ; i <= 10 ; i++){const li = document.createElement('li')li.style.backgroundImage = `url('../Selenium入门/极简壁纸/${i}.jpg')`ul.append(li)}</script>
</body>
</html>

这是基本的渲染模块,我们加入一个事件监听。

加载事件:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title></title><style>* {padding: 0;margin: 0;box-sizing: border-box;}ul {width: 650px;}li {margin: 10px;float: left;list-style: none;width: 100px;height: 100px;background-size: cover;transition: all .4s;}li:hover {transform: scale(1.2);border: 1px solid #ccc;box-shadow: 0 0 10px rgba(1, 1, 1, 0.5);}</style>
</head><body><div class="main"><ul></ul></div><script>window.onload = function () {const ul = document.querySelector('.main ul')for (let i = 1; i <= 10; i++) {const li = document.createElement('li')li.style.backgroundImage = `url('../Selenium入门/极简壁纸/${i}.jpg')`ul.append(li)}}</script>
</body></html>

页面点击事件

点击指定模块后执行相应的操作,使用click事件

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title></title><style>* {padding: 0;margin: 0;box-sizing: border-box;}ul {width: 650px;}li {margin: 10px;float: left;list-style: none;width: 100px;height: 100px;background-size: cover;transition: all .4s;}li:hover {transform: scale(1.2);border: 1px solid #ccc;box-shadow: 0 0 10px rgba(1, 1, 1, 0.5);}.d {position: fixed;right: 0;top: 100px;background-color: #ccc;}</style>
</head><body><div class="d"><div style="color: red;" data-id="1">顶部栏</div><div style="color:blue" data-id="2">下边栏</div></div><div class="main"><ul></ul></div><script>window.onload = function () {const ul = document.querySelector('.main ul')for (let i = 1; i <= 10; i++) {const li = document.createElement('li')li.style.backgroundImage = `url('../Selenium入门/极简壁纸/${i}.jpg')`ul.append(li)}// 点击事件在这里//开始const top = document.querySelector('div[data-id="1"]')const end = document.querySelector('div[data-id="2"]')top.addEventListener('click',function(){console.log("点了一下",top.innerHTML)})end.addEventListener('click',function(){console.log("点了一下",end.innerHTML)})//结束}window.addEventListener('scroll', function () {console.log(1)})</script>
</body></html>

页面滚动事件

看代码还能看段小说:想获取的话,看我之前的博客。直接scroll然后执行相应的事件

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title></title><style>* {padding: 0;margin: 0;box-sizing: border-box;}ul {width: 650px;}li {margin: 10px;float: left;list-style: none;width: 100px;height: 100px;background-size: cover;transition: all .4s;}li:hover {transform: scale(1.2);border: 1px solid #ccc;box-shadow: 0 0 10px rgba(1, 1, 1, 0.5);}</style>
</head><body><div class="main"><ul></ul></div><div>第4章敲门咚,咚咚。沉闷,怪异的敲门声依然以一个固定的频率响起,如一个调好的闹钟发出声响。教室的大门并没有锁上,甚至都没有拴住,只是随意的关上了而已,只要稍微用力的话就能轻易的推开。但是让人毛骨悚然的是,那个身穿黑色长衫,浑身布满尸斑的老人并没有推开大门,依然僵硬的站在那门外敲响着大门,没有丝毫想要进来的意思。可那老人虽然没有进来,但走廊外如墨汁一般浓郁的黑暗却是迅速袭来。整个教室开始发生了难以想象的巨大变化。崭新的墙壁上变的斑驳发霉,墙皮不断的脱落下来,变成了凹凸不平的墙面,那坑坑洼洼的墙面上更事长出了黑绿色的霉菌,散发出了一股阴冷,湿晦的味道,座椅上的书本迅速的变黄,然后腐烂,甚至连地面上的水泥也开始迅速的被风化了,露出了锈迹斑斑的钢筋,有些地方甚至开始出现了坍塌。仿佛在一瞬间的功夫这里已经经历了几十年的时间,被岁月给摧残。然而教室的灯光还在极力抗争着这股黑暗,白亮的灯光就像是风中残烛,散发出最后一丝昏暗的光亮,仿佛随时都要熄灭了一样。恐惧,出现在每一个学生的脸上,有人尖叫,有人呼救,也有人颤抖唯一镇定的是讲台上的周正。他一动不动,目光四处打量,留意着周围的任何动静。危险级别的鬼,还能拥有鬼域.这不是他能对付的。“周正,你看。”这个时候,方镜突然喊了一声,他脸色格外难看,指着教室课桌上的几个同学。之前并未留意,此刻看见方才反应过来。“咚,咚咚。”敲门声再次响起。这个时候刚才站在人群里活着的男同学突然浑身一颤,然后整个人僵直的栽倒在了地上。“李明你怎么了?”“怎么会这样,怎么会这样,谁来救救我们啊。”有女同学吓的瘫坐在地上哭泣道。“还之前还好好的,怎么突然就?”有人声音颤抖,哆哆嗦嗦的说道。一旁的方镜脸色铁青:“乱叫什么,门外有一只鬼,我们怎么死都有可能,能产生鬼域的鬼有多恐怖你们很快就会知道了。”其他人惊恐不已的看着他,一个个像是落入笼子之中的猎物,满是恐惧,慑慑发抖。“周正,还没有想出办法么?再想不出来我们都要死在这里。”方镜又怒道。他心中也在颤抖,因为鬼域之中谁都可能会死去,包括他。“啰嗦,你等不及的话就自己逃去,别指望我。”周正也一脸焦急,他不敢轻举妄动。“鬼域之中乱跑死的更快,你当我什么都不知道么?”方镜道。“既然知道就给我站在那里老实待着,真要死,你以为就你会死,所有人都一样,别以为知道一些东西就觉得自己很特殊,在鬼的面前人人平等。”周正道。“妈的。”方镜忍不住骂了一声。杨间此刻也手脚冰冷,他强迫自己冷静下来,因为这个时候不是开玩笑。可当他无意间看见那几乎要在墙壁上掉落下来的黑板时,顿时楞了一下。目光停留在了之前周正所写的那三句话上,尤其是最后一句:洞察鬼的规律。“周正不敢轻举妄动是因为他也在观察门外的那老人,寻找他的规律,只有找出规律,他才敢行动,快想想,快想想,这老人到底有什么规律可寻.”他脑子开始疯狂的转动起来,回想论坛里那个故事记录的一切,再联想到这眼前发生的事情。一定会有共同点,一定会有相似的地方。那个叫雷电法王的网友是在家里,当时他家的门是关上的,这个老人站在门外敲门然后进来了,接着来到房门口,再次敲门,然后又进来了。此刻,这只鬼出现在走廊外,同样也在敲门.但是还没有进来。为什么在那网友家中这老人进来了,这里却没有进来?同样的情况,同样的事情,是什么导致了其中的差异。是时间不够么?那么是什么时间不够。难道是敲门的时间不够?也许就是这里是关键。拼了。蓦地,杨间鼓起勇气喊道:“周正,是敲门声。”“敲门声?”周正一凝,目光灼灼的盯着这个突然出声的学生:“怎么说。”杨间忍住恐惧道:“虽然只是猜测,但我觉得这东西是在通过敲门方式来杀人的,也许那老人是在计时,也许是别的什么,但一定和敲门有关,如果能制止那东西敲门的话或许有用.”敲门杀人。如果真是这样那这鬼也未免太可怕了。“这家伙的潜力这么快就开始显现出来了”方镜目光很不善的看着他,死死的捏住了拳头:“绝不能让他活着离开这学校。”“相信你一回。”周正凝重的收回目光,他没有选择的余地。再不行动,这里的所有人都会死。立刻周正动了,他如一头狂暴的野兽般冲了出去,上瘦下肥的怪异身躯拥有着常人所不及的爆发力。“砰~!”一声巨响,教室的大门被他硬生生的撞开了,同时撞开了还有教室外那个身穿黑色长衫,一脸死灰,浑身长满尸斑的老人。老人撞倒,跌在了地上,可是没有人敢扶。他的身躯呈现一个怪异的姿势,就像是一个随意摆动手脚的僵直人偶一样,没有活人该有的韧性和柔软。鬼是杀不死的。周正自己写下的话自己当然不会忘记。哪怕这个老人被碾成泥,烧成灰,依然不会死,还会以一个匪夷所思的方式继续出现。能对付鬼的只有鬼。周正一咬牙,回头吼道:“你们看准时机,一有机会就逃出去,我来拖住这东西。”说完,他那宽大的风衣下,鼓起的肚子诡异的蠕动了几下。一只手,确切的说是一个手的轮廓,在一层皮肤的包裹下伸了出来,这只手呈现灰青色,指甲尖锐,仿佛要撕开那层肚皮从里面探出来。但包裹那只手的肚皮十分有韧性,并没有被撕破,而且让人恐惧的是,这只手足足伸出了两米多。这还是人的手么?就这样这只灰青色的怪手抓住了地上的老人。“滋滋~!”灯管闪烁的声音响起。瞬间,笼罩在教室内的黑暗消失不见了,明亮的灯光再次出现,虽然墙壁依然斑驳,地面还是要塌陷的样子,但似乎灾难得到了制止。“有用。”周正心中微微松了口气。但随后让他的眼睛却是陡然睁大,消瘦的几乎皮包骨的脸上被一股恐惧笼罩。倒在地上的老人此刻缓缓的站了起来,死灰色的眼睛微微转动了一下,似乎看向了周正。“不可能,被我限制了还能动?”周正脸色大变,当即回头吼道;“走,快走,趁着鬼域还没有出现,离开这里,我留在这里拖住这玩意。”这鬼,绝对不只是危险级别。他心中冷汗直冒。请收藏本站:https://www.bige3.cc。笔趣阁手机版:https://m.bige3.cc </div><script>window.onload = function () {const ul = document.querySelector('.main ul')for (let i = 1; i <= 10; i++) {const li = document.createElement('li')li.style.backgroundImage = `url('../Selenium入门/极简壁纸/${i}.jpg')`ul.append(li)}}window.addEventListener('scroll',function(){console.log(1)})</script>
</body></html>


基本使用的方法

使用scrollTop获取滚动的高度,这个高度指的是 页面被卷起来的高度,也可以直接修改页面高度,使用document.documentElement.scrollTop = 指定高度 这段代码用来直接修改当前页面的高度。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title></title><style>* {padding: 0;margin: 0;box-sizing: border-box;}ul {width: 650px;}li {margin: 10px;float: left;list-style: none;width: 100px;height: 100px;background-size: cover;transition: all .4s;}li:hover {transform: scale(1.2);border: 1px solid #ccc;box-shadow: 0 0 10px rgba(1, 1, 1, 0.5);}.d {position: fixed;right: 0;top: 100px;background-color: #ccc;}</style>
</head><body><div class="d"><div style="color: red;" data-id="1">顶部栏</div><div style="color:blue" data-id="2">下边栏</div></div><div class="main"><ul></ul></div><script>window.onload = function () {const ul = document.querySelector('.main ul')for (let i = 1; i <= 10; i++) {const li = document.createElement('li')li.style.backgroundImage = `url('../Selenium入门/极简壁纸/${i}.jpg')`ul.append(li)}const top = document.querySelector('div[data-id="1"]')const end = document.querySelector('div[data-id="2"]')top.addEventListener('click',function(){//点击侧边栏的时候直接跳转到顶部document.documentElement.scrollTop = 0})end.addEventListener('click',function(){console.log("点了一下",end.innerHTML)//跳转到底部document.documentElement.scrollTop = 1000})//结束}window.addEventListener('scroll', function () {console.log(1)})</script>
</body></html>

记得点击事件应该在windows加载成功后才有的,所以要把事件获取写道onload之中

页面尺寸事件,使用resize事件

方法讲解:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title></title><style>div{width: 500px;height: 500px;background-color: pink;}</style>
</head>
<body><div id="container"></div><script>// 获取容器元素var container = document.getElementById('container');// 定义处理函数function handleResize() {// 获取当前窗口的宽度和高度var windowWidth = window.innerWidth || document.documentElement.clientWidth;var windowHeight = window.innerHeight || document.documentElement.clientHeight;// 根据窗口大小调整容器样式if (windowWidth < 600) {container.style.backgroundColor = 'red';container.style.color = 'white';} else if (windowWidth >= 600 && windowHeight < 800) {container.style.backgroundColor = 'blue';container.style.color = 'white';} else {container.style.backgroundColor = 'yellow';container.style.color = 'black';}}// 添加事件监听器window.addEventListener('resize', handleResize);</script>
</body></html>

属性

获得宽高:offsetWidth offsetHeigh 获取元素的宽这个值包含元素自身设置的宽高,注意如果盒子时隐藏的获取的结果是0,注意该属性是只读属性并不可以修改。

焦点事件

直接使用focus (获得焦点)和blur(失去焦点)

  • 获得焦点focus事件是当元素获得焦点时触发的事件。元素获得焦点意味着用户的操作重点放在该元素上,通常是通过点击或者通过键盘导航(Tab 键)来实现。
  • 例如,当用户点击一个文本输入框时,该输入框就会获得焦点,这时就会触发focus事件。我们可以通过监听focus事件来执行特定的操作,比如显示相关的提示信息、改变样式等,以增强用户交互体验。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><input type="text" name="" id=""><script>const input = document.querySelector('input')input.addEventListener('focus', function () {input.value = '你好亲爱的读者'input.style.color = 'red'})input.addEventListener('blur', function () {input.value = '你好亲爱的读者'input.style.color = 'pink'})</script>
</body></html>

键盘事件

点击键盘keydown,脱离键盘keyup

其中监听对象e是记录键盘敲击按键对象,key是按键名称

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><input type="text"><script>const input = document.querySelector('input')input.addEventListener('keydown',function(e){            console.log(e.key)console.log("键盘敲0下")})input.addEventListener('keyup',function(){console.log("键盘起来")})</script>
</body>
</html>

表单提交事件

 表单事件(submit、change):当用户提交表单或更改表单字段的值时触发。

change时只有当内容改变时才触发

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><input type="text"><script>const text = document.querySelector('input')text.addEventListener('change',function(){console.log("修改了")})</script>
</body>
</html>

鼠标事件

.鼠标事件(mousedown(点击)、mouseup(释放)、mousemove(移动)):当用户在页面上移动鼠标或按下鼠标按钮时触发。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><button id="myButton">点击我</button><script>const button = document.getElementById('myButton');button.addEventListener('mousedown', function () {console.log('按下鼠标按钮');});button.addEventListener('mouseup', function () {console.log('释放鼠标按钮');});button.addEventListener('mousemove', function () {console.log('移动鼠标');});</script>
</body></html>

以上是基本的事件监听,要是对你有帮助的话请留下一个赞。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/173753.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

免费SSL证书有效期只有90天?太短?

随着网络安全问题日益受到重视&#xff0c;SSL证书成为了网站安全的必需品。然而&#xff0c;在许多情况下&#xff0c;免费提供的SSL证书往往只有90天的有效期&#xff0c;这种期限对于很多用户来说显得过于短暂。 首先&#xff0c;我们要理解为什么 SSL 证书的有效期设定为90…

基于单片机DHT11湿度测量与控制-CO2-光照报警系统程序和仿真

一、系统方案 1、本设计采用这51单片机作为主控器。 2、DHT11温湿度、CO2、光照强度送到液晶1602显示。 3、按键设置报警值。 4、蜂鸣器报警。 二、硬件设计 原理图如下&#xff1a; 三、单片机软件设计 1、首先是系统初始化 //初始化LCD*********************************…

LCR 047. 二叉树剪枝 和 leetCode 1110. 删点成林 + 递归 + 图解

给定一个二叉树 根节点 root &#xff0c;树的每个节点的值要么是 0&#xff0c;要么是 1。请剪除该二叉树中所有节点的值为 0 的子树。节点 node 的子树为 node 本身&#xff0c;以及所有 node 的后代。 示例 1: 输入: [1,null,0,0,1] 输出: [1,null,0,null,1] 解释: 只有红…

Nvidia VPI 双目相机生成深度图

nVidia VPI&#xff08;Vision Programming Interface&#xff09;提供了多种后端&#xff0c;用于执行图像处理和计算机视觉操作。不同的后端针对不同的硬件和用例进行了优化。这些后端包括&#xff1a; 1. CPU: 这是最通用的后端&#xff0c;它运行在标准的中央处理器&#…

【深度学习笔记】04 概率论基础

04 概率论基础 概率论公理联合概率条件概率贝叶斯定理边际化独立性期望和方差模拟投掷骰子的概率随投掷次数增加的变化 概率论公理 概率&#xff08;probability&#xff09;可以被认为是将集合映射到真实值的函数。 在给定的样本空间 S \mathcal{S} S中&#xff0c;事件 A \m…

Intellij Idea 断点小圆变成灰色怎么处理

场景1&#xff1a;变成了灰色实心圆 原因 断点变成灰色通常表示该断点处于失效状态。这可能是由于无意中点击了debug调试下方的“mute breakpoints”按钮导致的。 解决方案 依次点击设置小图标->View Options->Mute BreakPoints. 点击后 Mute BrakPoints左侧显示✔ 符号…

python之pyqt专栏5-信号与槽1

在上一篇文章&#xff0c;我们了解到如果想要用代码改变QLabel的文本内容&#xff0c;可以调用QLabel类的text()函数。 但是现在有个这样的需求&#xff0c;界面中有一个Button与一个Label&#xff0c;当点击Button时&#xff0c;将Label的内容改变为“Hello world&#xff01;…

【兔子王赠书第9期】ChatGPT进阶:提示工程入门

文章目录 写在前面ChatGPT推荐图书关键点编辑推荐内容简介推荐理由 粉丝福利写在后面 写在前面 人类一直在寻找、制造并使用工具&#xff0c;以扩展我们的能力&#xff0c;适应我们的环境&#xff0c;甚至超越我们的生物限制。现在&#xff0c;我们正站在一个历史性的分水岭之…

Jetpack Compose中适应性布局的新API

Jetpack Compose中适应性布局的新API 针对大屏幕优化的新组合件。 使用新的Material适应性布局&#xff0c;为手机、可折叠设备和平板电脑构建应用程序变得更加简单&#xff01;市场上各种不同尺寸的Android设备的存在挑战了构建应用程序时对屏幕尺寸的通常假设。开发者不应该…

c4d三维动画制作推荐 Cinema 4D 2024 中文for mac

功能介绍 场景管理器 Cinema 4D新内核的强大功能让您可以使用灵活的基于节点的资产来实现程序化的几何体创建、克隆等。 烟火 从Cinema 4D的任何物体或样条发射火焰、烟 雾和爆炸-加热&#xff01; 建模 引入用于重新拓扑的 ZRemesher、新的交互式建模工具、高级样条节点、对…

03_歌词滚动效果

03_歌词滚动效果 文章目录 03_歌词滚动效果效果一、数据准备①&#xff1a;歌词②&#xff1a;音频等 二、代码实现①&#xff1a;首页②&#xff1a;样式③&#xff1a;js逻辑④&#xff1a;测试 效果 一、数据准备 ①&#xff1a;歌词 var lrc [00:00.95]夜微凉 - 徐珊 [0…

Glare or Gloom, I Can Still See You – End-to-End Multi-Modal Object Detection

SENSOR-AWARE MULTI-MODAL FUSION G-log(-log(U))&#xff0c;U&#xff5e;Uniform[0,1] 辅助信息 作者未提供代码

【解决方案】安科瑞智能照明系统在福建二建大厦项目上的研究与应用

【摘要】&#xff1a;智能化已经成为当今建筑发展的主流技术、涵盖从空调系统、消防系统到安全防范系统以及完善的计算机网络和通信系统。但是长期以来、智能照明在国内一直被忽视、大多数建筑物仍然沿用传统的照明控制方式、部分智能大厦采用楼宇自控&#xff08;BA&#xff0…

Java 8新特性Optional的使用以及判空案例

Java 8新特性&#xff1a;Optional的使用及判空案例 在Java 8中&#xff0c;引入了一个重要的类Optional&#xff0c;它是为了解决空指针异常&#xff08;NullPointerException&#xff09;而设计的。Optional可以作为一个容器&#xff0c;可以包含一个非空的值或者为空。 Opti…

锂电池污水如何处理

锂电池是目前应用广泛的重要电池类型&#xff0c;然而其生产过程和废弃处理中产生的污水对环境造成了不可忽视的影响。本文将探讨锂电池污水的处理方法&#xff0c;以期为环境保护和可持续发展作出贡献。 首先&#xff0c;了解锂电池污水的组成是解决问题的关键。锂电池污水通…

防雷接地电阻和接地网的区别及其应用

接地是电气工程中的一种重要的安全措施&#xff0c;它可以保护电气设备和人员免受雷击和过电压的危害&#xff0c;也可以提高电气系统的运行稳定性和可靠性。接地的基本原理是将电气设备或人体与大地连接成同一电位&#xff0c;从而消除或减小危险电压。 地凯科技接地的实现方式…

上海亚商投顾:北证50指数大涨 逾百只北交所个股涨超10%

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 沪指11月24日震荡调整&#xff0c;深成指、创业板指盘中跌超1%。北证50指数大涨超6%&#xff0c;北交所个股持…

BGP路由的选路综合实验

题目要求 1.使用PreVal策略&#xff0c;确保R1通过R3到达192.168.10.0/24 2.使用AS_Path策略&#xff0c;确保R1通过R3到达192.168.11.0/24 3.配置MED策略&#xff0c;确保R1通过R3到达192.168.12.0/24 4.使用Local Preference策略&#xff0c;确保R4通过R2到达192.168.1.0/24…

git-2

1.分离头指针情况下的注意事项 分离头指针指的是变更没有基于某个branch去做&#xff0c;所以当进行分支切换的时候&#xff0c;在分离头指针上产生的commit&#xff0c;很可能会被git当作垃圾清理掉&#xff0c;如果你认为是重要的内容&#xff0c;切记需要绑定分支 2.进一步…

2023机器人灵巧手的分类与商业化应用及未来市场规模分析报告

今天分享的是机器人系列深度研究报告&#xff1a;《2023机器人灵巧手的分类与商业化应用及未来市场规模分析报告》。 &#xff08;报告出品方&#xff1a;深度行业分析研究&#xff09; 报告共计&#xff1a;26页 1 灵巧手是人形机器人重要的运控交互部件&#xff0c;近年来海…