javascript的事件介绍

2023-05-16

你的点赞就是继续前行的动力,嘻嘻!

文章目录

    • 事件概述
    • 二、事件绑定
      • 2.1HTML事件
      • 2.2 DOM0级事件
      • 2.3 DOM2级事件
    • 三、鼠标事件
    • 四、焦点事件
    • 五、滚动事件
    • 六、键盘事件
      • 6.1 介绍
      • 6.2 属性
    • 七、手机触摸事件
      • 7.1 手机触摸事件
      • 7.2 事件对象的属性
      • 7.3 触摸对象的属性
      • 7.4 this对象
    • 八、event事件
      • 8.1概念
      • 8.2 event 属性

事件概述

  1. 事件:是可以被js检测到的行为,实质上是一种交互操作。
    例如:我们可以给某按钮添加一个【onClick点击事件】,当用户对按钮发生点击时来触发某个函数。

事件的作用:
(1)各个元素之间可以借助事件来进行交互
(2)用户和页面之间也可以通过事件来交互
(3)后端和页面之间也可以通过事件来交互(减缓服务器的压力)

ps:注意:事件通常与函数配合使用,当事件发生时函数才会执行。
2. 事件传递
js中规定:
事件不仅能够和触发者交互,还会在特定的情况下沿着dom tree逐级传递,和dom tree中的各个节点进行交互。而js中的这种机制被称为事件传递机制。

事件传递方式主要分两种:事件冒泡、事件捕获

事件冒泡(IE提出)
事件从最具体的元素开始,沿着DOM树逐级向上依次触发,直至最不具体的元素停止。

事件捕获
事件从最不具体的元素开始,沿着DOM树逐级向下依次触发,直至达到最具体的元素停止。

二、事件绑定

2.1HTML事件

绑定操作发生在HTML代码中的事件,称为HTML事件。

语法:on+事件=‘函数();函数();函数();……‘

例如:


在上述HTML代码中,分别给d1和d2绑定了效果不同的HTML事件。

ps:HTML事件采用冒泡机制来处理事件。即
点击d2时会先执行d2的绑定事件(即执行test2函数)。
然后采用事件冒泡将事件传递给上一级DOM节点d1,然后d1执行自己的绑定事件。
pss:函数执行的顺序按照绑定事件时函数的顺序为准

HTML事件的移除方式:
元素.setAttribute(‘on+事件名’,null);
eg:d1.setAttribute(‘onclick’,null);

HTML事件缺陷:耦合性太强了,修改一处另一处也要修改。
当函数没有加载成功时,用户去触发事件,则会报错。

2.2 DOM0级事件

在js脚本中,直接通过【on+事件名】方式绑定的事件称为是DOM0级事件。

语法:元素.on+事件名  = function(){需要执行的语句;}

例如:
btn.onclick = function () {console.log(‘按钮被点击’);};

ps:以冒泡机制来处理事件,不存在兼容的问题

DOM0级事件的移除方式:
元素. on+事件名=null;
eg:btn.οnclick=null;

DOM0级事件缺陷:
一次只能绑定一个触发函数。如果同时绑定多个触发函数,则以最后一个为准。

btn.onclick = function () {console.log(‘按钮被点击11111’);};
btn.onclick = function () {console.log(‘按钮被点击22222’);};
btn.onclick = function () {console.log(‘按钮被点击66666’);};

点击按钮触发函数是最后一个,输出66666。

2.3 DOM2级事件

在js脚本中,通过addEventListener函数绑定的事件称为是DOM2级事件。

语法:元素.addEventListener(type,listener,useCapture)

	type:事件类型。【没有on!没有on!没有on!】
	listener:监听函数,绑定的函数
	useCapture:是否使用捕获机制。如果不写,默认值为false
	false:冒泡机制
	true:捕获机制
	注意:DOM2级事件可以绑定多个函数,执行顺序按照函数书写的顺序。

例如:
	btn.addEventListener('click',function() {console.log('d2');},true);
	btn.addEventListener('click',function() {console.log('d22');},true);

上述代码表示给btn节点添加了两个dom2级点击事件。事件传递采用事件捕获方式传递。

DOM2级事件的移除方式:
node.removeEventListener(type,外部函数名,useCapture)
eg:btn.removeEventListener(‘click’,test,true);

ps:DOM2级事件中如果绑定函数为【匿名函数】则无法删除。能够删除的只能是外部函数。
//绑定匿名函数
d1.removeEventListener(‘click’,function () {console.log(‘d1’);},true); //绑定外部函数 function test() {console.log(‘d1’);} d1.addEventListener(‘click’,test,true); d1.removeEventListener(‘click’,test,true);

pss:第三个参数默认可以不写,默认是false。但是如果删除的是捕获事件,则必须写为true才可以。

三、鼠标事件

鼠标单击触发:click
鼠标双击触发:dblclick
鼠标按下时触发:mousedown
鼠标抬起时触发:mouseup
鼠标移动时触发:mousemove

鼠标移入时触发(不冒泡): mouseenter
鼠标移出时触发(不冒泡): mouseleave
鼠标移入时触发(冒泡): mouseover
鼠标移出时触发(冒泡): mouseout

语法:元素.on+鼠标事件名称 = 调用函数
例如:d1.ondblclick = function () { console.log(‘这是d1’);};

a.鼠标的基本事件默认采用冒泡传递
b.可以给一个元素添加多个不同的鼠标事件,不同的鼠标事件之间互不影响
c.mouseenter和mouseleave两个事件不冒泡触发。

四、焦点事件

焦点:js当前正在和用户发生交互的节点称为焦点。可以类比为人类目光汇聚的地方。
语法:获得焦点和失去焦点事件既可以使用DOM0绑定也可以使用DOM2绑定

i1.addEventListener(‘focus’, function () {console.log(‘i1捕获事件’);}, true);
i1.addEventListener(‘blur’, function () {console.log(‘i1捕获事件’);}, true);
i2.onfocus = function () {console.log(“i2获得了焦点”)};
i2.onblur = function () {console.log(“i2失去了焦点”)};

注意:
这两个事件均不支持事件冒泡(只有当前节点发生调用)。
如果需要连续多次的触发,则需要使用DOM2级绑定事件中的捕获事件来达到

案例:用来判断输入框内的东西是否满足要求
‘’’

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>lesson1</title>
    <style>
        .colorRed{  color:red;  }
        .colorGreen{  color:green;  }
        .borderRed{  border:2px solid red;  }
        .borderGreen{  border:2px solid green;  }
    </style>
</head>
<body>

<span>用户名:</span>
<input type="text" class="userName"/>
<span class="userNameSpan"></span>
<br/>
<button>获得焦点</button>

<script>
    var userNameInput = document.querySelector('.userName');
    var userNameSpan = document.querySelector('.userNameSpan');
    var btn = document.querySelector('button');

    btn.onclick = function () {
        userNameInput.focus();//当按钮点击的时候,主动让input获得焦点。
        userNameInput.blur();
        userNameInput.focus();
    };

    userNameInput.onblur = function () {
        if(userNameInput.value.length == 11){
            userNameSpan.innerHTML = '正确';
            /*只要是系统提供的属性,大多在js中可以直接访问*/
            userNameInput.className = 'borderGreen';
            userNameSpan.className = 'colorGreen';
        }else{
            userNameSpan.innerHTML = '请输入11位正确手机号';
            userNameInput.className = 'borderRed';
            userNameSpan.className = 'colorRed';
        }
    };

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

五、滚动事件

scroll事件会在【文档】或【元素】发生滚动操作时触发。

【文档发生滚动时】
属性scrollTop\scrollLeft表示文档滚动的距离:(没有单位)

IE:document.documentElement.scrollTop\Left
非IE:document.body.scrollTop\Left

(可以使用document.body.scrollTop||document.documentElement.scrollTop来解决兼容性)

例:

window.onscroll = function () {
	var top = document.body.scrollTop||document.documentElement.scrollTop;
	var left = document.body.scrollLeft||document.documentElement.scrollLeft;
	console.log('top:'+top+'left:'+left);
	};

【元素发生滚动时】

元素发生滚动时并不存在兼容性的问题,但是需要有一个前提那就是:必须存在滚动条。
(元素的滚动条属性可以同过overflow:scroll/overflow-x:scroll/overflow-y:scroll来实现)

在元素发生滚动的时候,可以通过【元素.scrollTop/scrollLeft】获取到元素的位移距离。

例如:

var div =  document.querySelector('div');
	div.onscroll = function () {
	console.log(div.scrollTop);
	};

当然,上述例子中div必须得有内容,而且还要保证内容高度要大于实际高度才行。

//css代码
	body {  height: 2000px; width: 2000px;  }

//html代码
<p class="p1">点击一下</p>

//js代码
var p1= document.querySelector('.p1');
p1.onclick = function () {
document.body.scrollLeft = 2000;
document.body.scrollTop = 2000;
};

完成的功能,点击这个div块之后就会跳到页面的右下角。

六、键盘事件

6.1 介绍

键盘事件是指当用户在操作键盘的时候会自动被触发的事件,通常有以下三种:
(1) keydown:用户按下任意键都可以触发这个事件。如果按住不放,事件会被连续触发。
(2) keypress:用户按下任意键都可以触发这个事件(功能键除外)。如果按住不放,事件会被连续触发
(3) keyup: 用户释放按键时触发

ps:键盘事件一般绑定在需要用户输入的元素上(例如input),但是由于键盘事件默认采用事件冒泡机制,因此将键盘事件直接绑定在body之上也是允许的。

6.2 属性

在键盘事件中可以通过event.keycode来获取按下按键的编码值。

input1.onkeydown = function () {
console.log("down:"+event.keyCode);
};

ps:因此我们可以通过这个属性来获取到,在页面中用户曾按下过哪些按键。
pss:常见的按键编码【回车:13】【backspace:8】
3.keydown和keypress事件的区别
(1)keyPress主要用来捕获:数字(包括Shift+数字的符号)、字母(包括大小写)、小键盘等能够显示在屏幕中的字符。但是不能对系统功能键(例如:后退、删除等,其中对中文输入法不能有效响应)进行正常的响应
而KeyDown和KeyUp通常可以捕获键盘除了PrScrn所有按键(这里不讨论特殊键盘的特殊键)

(2)捕获字符长度区别
KeyPress只能捕获单个字符
KeyDown和KeyUp可以捕获组合键。

(3)捕获字符大小写识别区别
KeyPress可以捕获单个字符的大小写
KeyDown和KeyUp对于单个字符捕获的KeyCode都是一个值,也就是不能判断单个字符的大小写。

(4)捕获字符数字区别
KeyPress不区分小键盘和主键盘的数字字符。
KeyDown和KeyUp区分小键盘和主键盘的数字字符。
常见字符的按键编码

七、手机触摸事件

7.1 手机触摸事件

(1)touchstart:当手指触摸屏幕时触发;即使已经有一个手指放在了屏幕上也会触发。 (2)touchmove:当手指在屏幕上滑动时连续的触发。
(3)touchend:当手指从屏幕上移开时触发。 (4)*touchcancel:当系统停止跟踪触摸时触发。(如电话接入或者弹出信息,一般在这个操作中来做一些暂停游戏类的操作)

div.addEventListener('touchstart',function () {console.log("touches began");}); 
div.addEventListener('touchend',function () {console.log("touches end");});
div.addEventListener('touchmove',function (event) {console.log("touches move");});
div.addEventListener('touchcancel',function(event){console.log("cancel");});

ps:如非特殊说明,事件均为冒泡事件
pss:手机触摸事件必须使用dom2来进行绑定
psss:可以给一个元素添加多个触摸事件

7.2 事件对象的属性

事件对象,即【事件触发的时】用来保存【事件相关的所有信息的对象】。
事件对象基本都是系统为我们自动生成,不必手动创建。
以上事件都存在事件对象:
div.addEventListener(‘touchstart’,
function (event) {
console.log(“touches began”);
}
);
(1)touches:表示当前跟踪的触摸操作的Touch对象的数组(当前屏幕上所有的触摸点列表)。
(2)targetTouches:特定于事件目标的Touch对象的数组(当前对象上所有的触摸点列表)。
(3)changeTouches:表示自上次触摸以来发生了什么改变的Touch对象的数组(涉及当前事件的触摸点列表)。

7.3 触摸对象的属性

触摸对象,即【事件对象的touches属性】中的每一个元素。
一次触摸会创建一个触摸对象。

触摸对象中提供了很多属性方便我们获取和使用:
clientX:触摸目标在视口中的X坐标。
clientY:触摸目标在视口中的Y坐标。
identifier:表示触摸的唯一ID。
pageX:触摸目标在页面中的x坐标
pageY:触摸目标在页面中的y坐标。

screenX:触摸目标在屏幕中的x坐标。
screenY:触摸目标在屏幕中的y坐标。
target:触摸的DOM节点坐标

通常情况下都会在触摸事件被触发的时候,通过这两个属性来获取当前节点的位置。

7.4 this对象

概念:this代表【函数运行时】【自动生成的】一个【用来指代函数调用者】的对象,this只能在函数内部使用。

eg:

function test(){
			console.log(this);
		}
		test();//指向window,因为函数的调用者默认是window
		document.addEventListener(‘click’,test);//指向document节点
		document.querySelector(‘div’).addEventListener(‘click’,test);//指向div节点

根本原则:函数的调用者是谁,this就是谁

八、event事件

8.1概念

当dom tree中某个事件被触发的时候,会同时自动产生一个用来描述事件所有的相关信息(比如出发事件的元素、或者是事件的类型)的对象,这个对象就是event(事件对象)。

获取方式:
(1)直接通过event来获取
(2)还可以通过函数传参数的形式来使用,一般而言我们使用【形参e或eve】来代替

document.querySelector("#d1").onclick = function(e){
	console.log(e);
};
document.querySelector("#d1").onmousemove = function(eve){
	console.log(eve);
};
document.querySelector("#d1").onclick = function(){
	console.log(event);
};

8.2 event 属性

【type属性】
type属性用来获得【当前触发事件】的类型,此属性只读。

document.getElementById(“d1”).onclick = function () {
console.log(event);
console.log(event.type); //依赖于事件的触发而存在,只读属性
};

【bubbles 属性】
bubbles属性用来获得【当前触发事件的类型】是否冒泡,如果当前事件类型支持冒泡则返回true,否则返回false。

【eventPhase 属性】
eventPhase:事件传导至【当前节点】时处于什么的状态。
1:事件处于捕获状态
2:事件处于真正的触发者
3:事件处于冒泡状态

【target 属性和 currentTarget 属性】
target:返回事件真正的触发者
currentTarget:返回事件的监听者(触发的事件绑定到了哪个节点,就返回谁)

<div id="d1">d1
<div id="d2">d2</div>
</div>

document.getElementById("d1").onclick = function (e) {
console.log(e.target);
console.log(e.currentTarget);
};

为了在不同的浏览器下解决获取target的兼容性问题,可以采用如下的写法:
var target = eve.target || eve.srcElement

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

javascript的事件介绍 的相关文章

  • 单击输入[复选框]的标签将触发父级单击事件两次(淘汰)

    考虑这把小提琴 http jsfiddle net 9rkrahm6 我有一个
  • 将 OoXml 插入单词抛出错误:未知

    我一直在尝试通过office js将OOXML插入到word文档的正文内容中insertOoXML 方法 我什至尝试过最简单的实现 认为我在尝试替换 XML 本身中的 fieldCodes 时做了一些不正确的事情 所有结果都是这样Error
  • JavaScript onTouch 不工作

    谁能告诉我为什么这个 onTouch 处理程序没有触发 var myDiv document getElementById existingContent var myButton a href log out a myDiv append
  • 如何在同一页面上使用AJAX处理多个表单

    我有一个表单 当我单击 提交 时 它就被提交了 然后该表单隐藏 操作页面的结果显示在 div 中 classname dig 它工作正常 但是当我添加另一个表单时 它停止正常工作并且所有表单同时提交 我如何更改我的代码 done click
  • 关闭选项卡时要求确认[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 当我在某些浏览器上关闭页面时 我希望出现一个消息框 并询问我是否真的要关闭页面 有两个按钮 如果我单击No那么这个标签就不会被关闭 我怎样
  • 从数据 URI 解码 QR 码

    我尝试从数据 uri 中解码二维码 var dataUri data image gif base64 R0lGODdh9gD2AIAAAAAAAP ywAAAAA9gD2AAAC decodeQrCode dataUri cb 我已经尝试
  • 在 Vue.js 中从父组件执行子方法

    目前 我有一个 Vue js 组件 其中包含其他组件的列表 我知道使用 vue 的常见方式是将数据传递给孩子 并从孩子向父母发出事件 但是 在这种情况下 我想在子组件中的按钮出现时执行子组件中的方法 parent被点击 哪种方法最好 一种建
  • 解析“流”JSON

    我在浏览器中有一个网格 我想通过 JSON 将数据行发送到网格 但浏览器应该在接收到 JSON 时不断解析它 并在解析时将行添加到网格中 换句话说 在接收到整个 JSON 对象后 不应将行全部添加到网格中 应该在接收到行时将其添加到网格中
  • 使用 JavaScript 使链接保持活动状态并在单击时显示悬停效果

    I am struggling to make this work I d like to make it where if O F is clicked the hover state stays active if another li
  • 在 Wordpress 站点中进行 AJAX 调用时出现问题

    我在使用 Wordpress 站点功能的 AJAX 部分时遇到了一些问题 该功能接受在表单上输入的邮政编码 使用 PHP 函数来查找邮政编码是否引用特定位置并返回到该位置的永久链接 我的第一个问题是关于我构建的表单 现在我的表单操作是空白的
  • 可以使用 jQuery 或 Javascript 将图片的特定部分用作链接吗?

    我有这个想法 将图片 而不是文本 的各个部分链接到不同的页面或网站 并且我想在不实际创建不同的照片并将它们彼此靠近的情况下完成 这样看起来就像是一张完整的图片 这里有人知道如何使用 JavaScript 的变体 例如 jQuery 或纯 J
  • 除了更改标题之外,如何在 Firefox 中强制另存为对话框?

    有没有办法在 ff 中强制打开 www example com example pdf 的另存为对话框 我无法更改标题 如果您可以将文件以 Base64 格式输出到客户端 则可以使用 data uri 进行下载 location href
  • 标签获取 href 值

    我有以下 html div class threeimages a img alt Australia src Images Services 20button tcm7 9688 gif a div class text h2 a hre
  • 在requestAnimationFrame中使用clearRect不显示动画

    我正在尝试在 HTML5 画布上做一个简单的 javascript 动画 现在我的画布是分层的 这样当我收到鼠标事件时 背景层不会改变 但带有头像的顶层会移动 如果我使用 requestAnimationFrame 并且不清除屏幕 我会看到
  • 表单计算器脚本基本价格未加载 OnLoad

    我的表单中有一个计算器来计算我的下拉选项选择 function select calculate on change calc input type checkbox calculate on click calc function cal
  • Firefox 书签探索未超过 Javascript 的第一级

    我已经编写了一些代码来探索我的 Firefox 书签 但我只获得了第一级书签 即我没有获得文件夹中的链接 e g 搜索引擎 雅虎网站 谷歌网站 在此示例中 我只能访问 Search engines 和 google com 不能访问 yah
  • 提交表单并重定向页面

    我在 SO 上看到了很多与此相关的其他问题 但没有一个对我有用 我正在尝试提交POST表单 然后将用户重定向到另一个页面 但我无法同时实现这两种情况 我可以获取重定向或帖子 但不能同时获取两者 这是我现在所拥有的
  • 如何获取给定 DOM 元素的所有定义的 CSS 选择器?

    如何使用 jQuery 获取给定 DOM 元素的所有定义的 CSS 选择器 定义后 我的意思是在应用于任何样式表的所有 CSS 选择器document 在某种程度上 这类似于 FireBug 实现的功能 其中显示所选 DOM 元素的所有应用
  • JQuery 图像上传不适用于未来的活动

    我希望我的用户可以通过帖子上传图像 因此 每个回复表单都有一个上传表单 用户可以通过单击上传按钮上传图像 然后单击提交来提交帖子 现在我的上传表单可以上传第一个回复的图像 但第二个回复的上传不起作用 我的提交过程 Ajax 在 php 提交
  • 使用 Ajax 请求作为源数据的 Jquery 自动完成搜索

    我想做的事 我想使用 jquery 自动完成函数创建一个输入文本字段 该函数从跨域curl 请求获取源数据 结果应该与此示例完全相同 CSS 在这里并不重要 http abload de img jquerydblf5 png http a

随机推荐

  • ubuntu解决resolv.conf被重写问题

    解决resolv conf被重写问题 来源 xff1a http www cnblogs com lanxuezaipiao p 3613497 html 第二步中你虽然配置了DNS xff0c 但是每次重启虚拟机或重启网络后 etc re
  • 视觉SLAM-回环检测

    这是课上做的一个pre xff0c 大家可以看看帮助理解 xff0c 有问题或者写的不对的可以提出 目录 前言 一 SLAM 问题 xff08 SLAM Problem 二 回环检测 xff08 Loop Closing 三 为什么要回环检
  • ROS进二阶学习笔记(9)-- 关于Overlay:重名 package 在不同catkin workspace 中,

    要把ROS玩转 xff0c 必须把 catkin 玩转 http wiki ros org catkin Tutorials 其中 xff0c Overlay问题是 重名 package 在不同catkin workspace 中时 xff
  • ROS进二阶学习笔记(10) -- rospy.Publisher() 之 queue_size

    ROS进二阶学习笔记 xff08 10 xff09 rospy Publisher 之 queue size ref link 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 queue size
  • 我的近况及hugo搭建教程

    还是有朋友一直在关注我 尽管很少 xff01 说声感谢 xff01 xff01 xff01 我还是愿意使用自己搭的hugo hugo搭建教程 xff1a Prerequisites Before you begin this tutoria
  • DSP芯片的定点运算

    本文排版不恰当 xff0c 请到新浪爱问下载本文的pdf版 xff0c 豪猪哥 DSP芯片的定点运算1 0 第3章 DSP芯片的定点运算 3 1 数 的定 标 在定点DSP芯片中 xff0c 采用定点数进行数值运算 xff0c 其操作数一般
  • STM32CubeMX自动生成SYSTICK配置

    1 SYSTICK原理及其寄存器 1 1 SYSTICK原理 SysTick 是一个24位的倒计数定时器 xff0c 当计到0时 xff0c 将从RELOAD寄存器中自动重装载定时初值并继续计数 xff0c 且同时触发中断 只要不把它在Sy
  • OpenCV之求多边形最小外接矩形中心点坐标及旋转度数

    代码 include lt opencv2 opencv hpp gt include lt vector gt include lt algorithm gt using namespace cv using namespace std
  • SLAM总结(一)

    1 概述 SLAM 机器人同时定位与建图 xff1a 本质上是一个系统 xff0c 主要分为四部分 xff1a 传感器数据输入 xff0c i前端数据处理 xff08 关键帧匹配 xff09 xff0c 后端数据优化 xff08 滤波器 x
  • Linux消息队列与信号量

    Linux消息队列与信号量 一 消息队列 概念 xff1a 消息队列是由内核负责维护管理的链式数据队列 xff0c 不是根据先后顺序出队 xff0c 而是根据消息类型进行收发数据 span class token keyword int s
  • 类的使用中:为什么静态方法中使用非静态成员变量需要创建,静态的不需要,非静态方法中可以随便使用两者

    package com qf javase day11 64 author 徐兴 64 version 1 0 64 date 2022 3 1 14 13 public class StaticDemo2 static和非static的使
  • STL应用篇

    概要 STL是泛型编程 Generic Programming GP 和C 43 43 结合的产物 STL主要由几个核心部件组成 xff1a 迭代器 容器 算法 函数对象 适配器 容器即物之所属 xff1b 算法是解决问题的方式 xff1b
  • 计算机网络I-考前指导复习提纲

    计算机网络I考前指导 填空 选择 连线 简答 计算等题型 考试范围基本在course review里面 xff0c 老师说可能会考的用表示 xff08 自己学校的考点都在这里 xff0c 仅供参考 xff09 PPT1 Networking
  • 数据结构与算法学习总结(七)——二叉树的概念

    二叉树的定义 二叉树 binary tree 由结点的有限集合构成 这个有限集合或者为空集 empty xff0c 或者为由一个根节点 root 及两颗互不相交 分别称作这个根的左子树 left bustree 和右子树 right sub
  • 从升级服务器系统聊聊编写脚本

    本文使用 署名 4 0 国际 CC BY 4 0 许可协议 xff0c 欢迎转载 或重新修改使用 xff0c 但需要注明来源 署名 4 0 国际 CC BY 4 0 本文作者 苏洋 创建时间 2020年02月14日 统计字数 4798字 阅
  • NUC 折腾笔记 - 储存能力测试

    NUC 折腾笔记 储存能力测试 前文提到过 xff0c 我计划折腾下这种小盒子 xff0c 作为日常开发过程中的拓展设备 在短暂使用之后 xff0c 我为它拓展了两块容量更高的硬盘 xff0c 开始正式使用 因为使用了一些网上颇有争议的国产
  • 使用 WordPress 快速打造个人 Wiki

    本文使用 署名 4 0 国际 CC BY 4 0 许可协议 xff0c 欢迎转载 或重新修改使用 xff0c 但需要注明来源 署名 4 0 国际 CC BY 4 0 本文作者 苏洋 创建时间 2019年06月28日 统计字数 3644字 阅
  • pip版本过低无法更新 解决方案

    问题 xff1a 方案一 xff08 失败 xff09 xff1a python span class token operator span m pip install span class token operator span spa
  • MOOC数据结构(下)(自主模式)-平均气温(Temperature)

    平均气温 Temperature Description A weather station collects temperature data from observation stations all over the country
  • javascript的事件介绍

    你的点赞就是继续前行的动力 xff0c 嘻嘻 文章目录 事件概述二 事件绑定2 1HTML事件2 2 DOM0级事件2 3 DOM2级事件 三 鼠标事件四 焦点事件五 滚动事件六 键盘事件6 1 介绍6 2 属性 七 手机触摸事件7 1 手