js事件介绍

云模型在综合评价过程中的应用 目录 1 云模型标尺(标准云模型)的构建方法 1.1 通过正态云的“3En 规则”来表示评价论域 1.2 通过论域的边界值隶属度相等来表示评价论域 1.3 通过黄金分割法来表示评价论域 2 确定评价结果的过程 2.1 基本云发生器 2.2 X条件云发生器 2.3 两种方法的区别 综合评价问题一般分为以下六个步骤 1、明确评价目的; 2、确定被评价对象; 3、建立评价指标体系(包括收集评价指标的原始值、评价指标的若干预处理等); 4、确立与各项评价指标相对应的权重系数; 5、选.. 阅读详情
主要参考 js权威指南和js高级程序设计
JS与HTML的交互是通过事件来实现的
观察员模式的模型,支持页面行为(javascript)与页面的外观(html css)之间的松耦合
概念:
事件(event):是指用户或者浏览器自身执行的某种动作。如:click、load和mouseover。
事件类型(event type):用来说明发生什么类型事件的字符串,有时候,称为事件名称(event name),如:'mousemove','keydown','load'
事件目标(event target):发生的事件与之相关的对象。
事件处理程序(event handle/listener):处理或者响应事件的函数。
事件对象(event object):与特定事件相关且包含有关事件详细信息的对象,事件对象作为参数传递给事件处理程序函数(IE8除外,仅能通过window.event得到)
--------------------------------------------------------------------------------------------------------------------------------------
事件传播/事件流(event propagation):
描述的是从页面中接收事件的顺序。IE的事件流是事件冒泡流(event bubbling),而其他事件流是事件捕获流(event capturing)。
1、事件冒泡流:事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后,逐级向上传播到较为不具体的节点(文档)。所有现代浏览器都支持事件冒泡,故而,放心使用。
例如:
<!DOCTYPE html>
    <html>
    <head>
        <title>Event Bubbling Example</title>
    </head>
    <body> 
       <div id="myDiv">Click Me</div>
    </body>    
</html>
当你点击<div>元素时,click事件会按照,<div> -> <body> -> <html> -> document的顺序来传播。
2、事件捕获流:是不太具体的节点更早接收到事件,而具体的节点最后接收事件。此种情况下,点击<div>元素时,click事件会按照,document -> <html> -> <body> -> <div>的顺序来传播。
------------------------------------------------------------------------------------------------------------------------------
DOM事件流:
“DOM2级事件”规定的事件流包括三个阶段:事件捕获阶段、处于目标阶段和事件冒泡阶段。以前面的点击事件为例:

从图中看出,实际目标在捕获阶段不会接收到事件,这意味着在“捕获阶段”,事件从document到<html>再到 <body>后就停止了。下一个阶段是“处于目标”阶段,于是,事件在<div>上发生,并在事件处理中被看成“冒泡阶段”的一部分。然后,冒泡阶段发生,事件又传回document。
--------------------------------------------------------------------------------------------------------------------------
事件处理程序:
响应某个事件的函数叫做事件处理程序,按照规定,事件处理程序的属性名称以“on”开头,后面跟着事件名称,因此click事件的事件处理程序是onclick,load事件的事件处理程序是onload。为事件指定处理程序的方式有好几种。

1、HTML事件处理程序(不推荐用):HTML标签属性作为事件处理程序属性,属性值是js代码字符串,即事件处理函数的主体。在执行时,有权访问全局作用域中的任何代码 ,会创建一个封装着元素属性值的函数,这个函数中有一个局部变量event,即事件对象。无需定义它,即可通过event,直接访问事件对象,在这个函数内,this值等于事件的目标元素。
例如:
<input type="button" value="按钮" id="btn" onclick="alert('hello')">
<script >
function showMessage(){
   alert('hello world!!!');
}
</script>
<input type="button" value="按钮" id="btn" onclick="showMessage()">
缺点:1. HTML和JS代码紧密耦合在一起,无法给元素添加多个事件。 2. 时差问题,当触发事件时,触发的函数还没有定义,会报js错误,可通过try-catch,来提前捕获js错误。

2、DOM0级事件处理程序:较传统的方式,每个元素(包括window和document)都有自己的事件处理程序属性,这些属性需要小写,如onclick,将这个属性设置为一个函数,就可以指定事件处理程序。
例如:
<input type="button" value="按钮2" id="btn2">
<script >
   function showMessage(){
      alert('hello world!!!');
   }
   var btn2 = document.getElementById('btn2');//取得按钮的引用
   //给对象以属性方式添加方法
   btn2.onclick=function(){
      alert("这是通过DOM0级添加的事件!!!");
   }
   //删除onclick属性
   btn2.onclick=null;
</script>
优点:简单、跨浏览器

3、DOM2级事件处理程序:(不兼容IE,需要用IE的事件处理程序)
DOM2级事件定义了两个方法:
用于处理指定和删除事件处理程序的操作:addEventListener()和removeEventListener()。
接受三个参数:要处理的事件名称、作为事件处理程序的函数、布尔值(true,表示在捕获阶段调用事件处理程序,false,表示在冒泡阶段调用事件处理程序)
例如:
<input type="button" value="按钮3" id="btn3">
<script >
    function showMessage(){
        alert('hello world!!!');
    }
    var btn3 = document.getElementById('btn3');//取对象
    //事件不加on,兼容浏览器用false
    btn3.addEventListener('click', showMessage, false);
    //this引用被触发的元素,this相当于but3
    btn3.addEventListener('click', function(){
    	alert(this.value)}, false);
    //必须保证removeEventListener与addEventListener中的参数相同
    btn3.removeEventListener('click', showMessage, false);
</script>
特点:1. 添加事件处理程序的主要好处是可以添加多个事件处理程序,它们会按照顺序触发。2. removeEventListener()只能移除非匿名函数。

4、IE事件处理程序:
attachEvent()添加事件
detachEvent()删除事件
接受相同的两个参数(IE8之前只支持事件冒泡,默认是事件冒泡,所以不加布尔值):事件处理程序的属性名称和作为事件处理程序的函数
例如:
<input type="button" value="按钮4" id="btn4">
<script>
   function showMessage(){
      alert('hello world!!!');
   }
   //支持IE事件处理程序:IE和opera
   var btn4 = document.getElementById('btn4');//取对象
   btn4.attachEvent('onclick', showMessage);
   // 必须保证attachEvent与detachEvent中的参数相同
   btn4.detachEvent('onclick', showMessage);
</script>
特点 :1. 也可以为一个元素添加多个事件处理程序,但是,与DOM方法不同的是,这些事件处理程序不是以添加它们的顺序执行,而是可能按照任何顺序被触发(js高级程序设计P353 13.2 事件处理程序和js权威指南P457 17.3.5 调用顺序观点不一致)。2. 在使用DOM0级方法的情况下,事件处理程序会在其所属元素的作用域内运行;在使用attachEvent()方法的情况下,事件处理程序会在全局作用域中运行,因此this等于window。3. detachEvent()只能移除非匿名函数。

5、跨浏览器的事件处理程序
为了以跨浏览器的方式处理事件,我们会使用隔离浏览器差异的js库,自己封装在一个对象内
例如:
<script >
var eventUtil={
   //添加句柄,要操作的元素(element),事件名称(type),用什么事件处理程序函数(handler)
   addHandler:function(element,type,handler){
      if(element.addElementListener){
         // DOM2级事件处理程序
         element.addEventListener(type,handler,false);
      }else if(element.attchEvent){
         // IE事件处理程序
         element.attachEvent('on'+type,handler);
      }else{
         // DOM0级事件处理程序,注意js中所有用属性的地方,都可以用[],比如:element.onclick===element['onclick']
         element['on'+type]=handler;
      }
   }

   //删除句柄
   removeHandler:function(element,type,handler){
      if(element.removeElementListener){
         //DOM2级事件处理程序
         element.removeEventListener(type,handler,false);
      }else if(element.detachEvent){
         //IE事件处理程序
         element.detachEvent('on'+type,handler);
      }else{
         //DOM0级事件处理程序
         element['on'+type]=null;
      }
   }
}

   var btn = document.getElementById("myBtn");var handler = function(){
       alert("Clicked");};
   eventUtil.addHandler(btn3, 'click', showMessage);
   eventUtil.removeHandler(btn3, 'click', showMessage);
</script >










MATLAB - 利用非线性模型预测控制(Nonlinear MPC)来控制四旋翼飞行器 本示例展示了如何利用非线性模型预测控制(MPC)为四旋翼飞行器设计一个跟踪轨迹的控制器。 阅读详情

相关推荐

详解k-means++

一、概述 定义:k-means++是一种为k-means聚类算法选择初始值(或“种子”)的算法。它是NP-hard k-means问题的一种近似算法,它是一种避免标准k-means算法有时发现的较弱聚类的方法。 K-means与K-means++:原始K-means算法最开始随机选取数据集中K个点作为聚类中心,而K-means++按照如下的思想选取K个聚类中心:假设已经选取了n个初始聚类中心(0<n<K),则在选取第n+1个聚类中心时:距离当前n个聚类中心越远的点会有更高的概率被选为第n+1个聚

qq_42364307的博客 3万+

数据库顶级会议介绍:VLDB、SIGMOD、ICDE

VLDB和另外两大数据库会议SIGMOD、ICDE构成了数据库领域的三个顶级会议。VLDB (Very Large Data Base) 是数据库研究人员,供应商,参与者,应用开发者,以及用户一年一度的主要国际论坛。VLDB国际会议于1975在美国的弗雷明汉马 (Framingham MA) 成立,第一届VLDB就吸引了近100篇文章和150多个参与者,取得了巨大的成功。随着时间的推移,VLDB会

XXL的技术博客 1万+

三相逆变器拓扑结构的分析及应用场景

三相逆变器是电力电子领域中广泛应用的一种设备,用于将直流电转换为交流电。不同的拓扑结构在性能、成本、复杂度和应用领域上存在差异。小编将在本文中将进一步拓展对三相逆变器拓扑结构的分析,并探讨其适用的应用场景。

道合顺的博客 2235

JS的事件介绍

JS事件,就是用户或浏览器本身的某种行为,一般是用户对页面的一些动作引起的,例如,单击某个链接或按钮、在文本框中输入文本、按下键盘上的某个按键、移动鼠标等等。当事件发生时,您可以使用 JavaScript 中的事件处理程序(也可称为事件监听器)来检测并执行某些特定的程序。JS(JavaScript)与HTML 之间的交互是通过事件(event)实现的,或者说,事件是JavaScript和DOM之间进行交互的桥梁。 一般情况下事件的名称都是以单词on开头的,例如点击事件 onclick、页面加载事件 onl

cnds123的专栏 1万+

2025-E题国一-简易自行瞄准装置:基于嘉立创地猛星/天猛星与K230的视觉巡线云台系统设计

本文详细介绍了2025年全国大学生电子设计竞赛E题一等奖作品——基于嘉立创地猛星/天猛星与K230的视觉巡线云台系统设计。该系统通过地猛星主控实现小车巡线,天猛星主控驱动云台,结合K230开发板的视觉识别能力,构建了一套完整的视觉巡线云台系统,实现了自动巡线与精准瞄准功能。文章深入剖析了硬件选型、双闭环PID控制算法、视觉识别与目标跟踪等核心技术,并分享了系统调试与避坑经验。

weixin_42596011的博客 673

量化交易如何利用涨停板策略收割散户

量化交易通过算法筛选特定特征的股票,在早盘建立底仓后,利用大单拉升制造抢筹假象,吸引散户跟风买入。这种策略利用了散户的认知偏差,如锚定效应和从众心理,导致次日低开闷杀。从技术实现来看,量化策略通过控制买入量、隐藏真实意图等手段,精准执行隔日砸策略。对于短线交易者而言,理解量化资金的运作逻辑和识别危险涨停板的特征至关重要,这包括观察封板时间、盘口挂单、量价关系等多维度数据。在算法主导的市场中,散户需要升级交易工具和策略,从预测走势转向应对走势,才能避免成为量化策略的牺牲品。

weixin_33046983的博客 285

js基础知识(2)

addEventListener() 方法用于向指定元素添加事件处理程序(事件句柄handler)。参数1:事件名称必须。字符串,指定事件名。注意: 不要使用 “on” 前缀。例如,使用 click ,而不是使用 onclick。参数2:function 必须。指定要事件触发时执行的函数。注意:事件对象会作为第一个参数传入函数。参数3:useCapture 可选。布尔值,指定事件是否在捕获或冒泡阶段执行。true - 事件处理程序(事件句柄)在捕获阶段执行false默认。

智商不在服务区的博客 1446

uniapp [安卓苹果App端] - 详细实现下载文件保存到用户手机本地,指定文件存储位置路径及文件夹名称下载并保存,Uniapp app端将文件下载保存并储存到指定目录(手机系统存储空间权限检测)

uni-app,安卓Android,苹果ios,安卓app端,苹果App端,uniapp苹果安卓app,app端下载文件,移动端文件下载,并保存到手机本地存储空间,uniapp下载文件保存到手机本地,iOS下载文件怎么保存,系统读写存储空间权限,下载文件到本地详细流程及源代码,保存自定义目录,uniapp,实现下载文件并保存到本地,文件后缀,如何指定手机的存放目录路径url,点击下载文档到手机中并提示存储位置,如何在uniapp中实现文件下载功能,uniApp文件下载,怎么指定文件保存目录,下载报错,没反应

🏆 前端领域优质创作者 1万+

Eclipse、Tomcat集成部署工程

Eclipse、Tomcat集成部署工程,有两种方式。一种方式是通过WTP(WEB TOOLS PLATFORM)下载,并集成tomcat,另一种是单独下载Tomcat,然后通过配置集成。 当然做这些工作之前,你首先要下载Eclipse,并且安装了jdk1.7,然后对Eclipase进行了配置,我下载的Eclipse版本是Kepler Service Release 1。 首先介绍下第一种方式...

黄玮鹏的专栏 1107

2、稳定性问题全景图——死机、重启、ANR、Crash、黑屏五大类

当 Crash 发生在 system_server、surfaceflinger、mediaserver 等关键系统进程中时,其后果等同于系统级故障,可能触发 Zygote 重启甚至 kernel panic。这类问题在稳定性治理中的优先级应等同于 P0。

woailuojp的博客 49

运维系列【仅供参考】: Windos10和Windos11 配置intel网卡vlan的方法

Windos10和Windos11 配置intel网卡vlan的方法

weixin_54626591的博客 473

js事件的分类和介绍

1、常用Window事件(window.onload/onscroll...=function(){}) load事件 unload事件(页面加载时生效) scroll事件(页面滚动时生效) 2、常用鼠标事件(box.onclick/onmouseover...=function(){}) click事件(单击) dbclick事件(双击)

sadobserver的博客 329

超分辨率重建:ESPCN与SRGAN技术对比

超分辨率重建:ESPCN与SRGAN技术对比​ 人工智能,计算机视觉,大模型,AI,超分辨率重建是一种通过技术手段,将低分辨率图像转换为高分辨率图像的过程。它的目的是恢复低分辨率图像中丢失的细节信息,使图像具有更高的清晰度和视觉质量。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 7万+

js离焦事件_JavaScript常用事件介绍

JavaScript 事件(常用)网页中的每个元素都可以产生某些可以触发 JavaScript 函数的事件。比方说,我们可以在用户点击某按钮时产生一个onClick 事件来触发某个函数。事件在HTML 页面中定义。事件举例:鼠标点击页面或图像载入鼠标悬浮于页面的某个热点之上在表单中选取输入框确认表单键盘按键注意:事件通常与函数配合使用,当事件发生时函数才会执行。事件三要素事件源、事件、事件驱动程序...

weixin_39979215的博客 897

visio安装包

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

VB摄像头监控

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

介绍js各种事件

当用户将该元素拖到可放置的元素上并释放鼠标按钮时,将移动该元素到可放置的元素中。在这个例子中,我们获取了ID为“myElement”的元素,并使用addEventListener()方法添加了一个鼠标移动事件监听器。在这个例子中,我们获取了ID为“myButton”的按钮元素,并使用addEventListener()方法添加了一个点击事件监听器。点击事件是指当用户单击页面上的某个元素时触发的事件。鼠标移动事件是指当用户将鼠标移动到页面上的某个元素上时触发的事件。六、窗口大小改变事件。

weixin_64965154的博客 1万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

JavaScript事件介绍

事件是发生在你正在编程的系统中的事情——当事件发生时,系统产生(或“触发”)某种信号,并提供一种机制,当事件发生时,可以自动采取某种行动(即运行一些代码)。事件是在浏览器窗口内触发的,并倾向于附加到驻留在其中的特定项目。这可能是一个单一的元素,一组元素,当前标签中加载的 HTML 文档,或整个浏览器窗口。有许多不同类型的事件可以发生。用户选择、点击或将光标悬停在某一元素上。用户在键盘中按下某个按键。用户调整浏览器窗口的大小或者关闭浏览器窗口。网页结束加载。表单提交。

西凉的悲伤博客 805

老版QQ原生表情gif动态

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

JS事件流介绍以及阻止事件冒泡

JS的事件流(事件处理的流程): 事件捕获 处理目标 事件冒泡 事件捕获: 在DOM树中,沿着DOM树结构,从顶层向底层传播事件的行为。 从最不确定的元素到最确定的元素事件传播的行为。 处理目标: 对目标元素进行操作。 事件冒泡: 在DOM树中,沿着DOM树结构,从底层向顶层传播事件的行为。 从最确定的元素到最不确定的元素事件传播的行为。 注意点: 现代浏览器中事件处理的方式都默认按照事件冒...

吴小迪的博客 4155

JS事件介绍

JS事件 js事件是指我们使用鼠标或者键盘做了某些事件来触发对应的处理函数 事件由三部分组成 触发事件的元素 对应的事件函数 事件的处理函数 事件函数的特点 全小写且以on开头 onclick on事件开头 click是事件名 点击 内联模式 直接在标签内容以指定属性的方式 较少 <button onclick="alert('hello')">点击</button> 内联模式 直接在标签内容以指定属性的方式 常用1 <button onclick="handlerC

lz010123的博客 665

js事件的详细介绍

js事件的详细介绍

qq_46372132的博客 802

JavaScript函数 事件简单介绍

Java Script 函数(function) 作用域的提升 函数声明才有函数作用域的提升的作用,函数表达式不能提升作用域 会提升到当前函数作用域的最上面 js函数中函数可以嵌套 JS中函数就是作用域 this JS中的this上下文对象,在运行期间动态绑定对象,Java是在编译器绑定对象 this所在的函数是否是通过new使用,指定new的对象 是否...

weixin_45116824的博客 129

JavaScript事件介绍与使用

js事件可以是浏览器行为,也可以是用户行为. 如果是浏览器行为例如是页面加载完成事件。onload 如果是用户行为就是用户的一切操作都是发生的事件,鼠标操作事件(单击,双击,悬浮等),键盘操作事件(键盘录入等)。

几许的博客 1225

JavaScript事件的分类和介绍

1、关于事件           在我们使用JavaScript编写脚本语言时,会发现我们会常常用到各种事件,如简单的单击事件onclick (通过鼠标点击触发事件),   onkeydown(键盘事件 按下键盘上任意健值触发)等等, 通过对这些事件的设置,javascript可以触发网页中设置好的事件, 事件的触发可以是用户的行为,也可以是浏览器的行为 事件通常有这几种案例, 元素被点击时,

周秦卿的博客 1858

javascript的事件介绍

你的点赞就是继续前行的动力,嘻嘻! 文章目录事件概述二、事件绑定2.1HTML事件2.2 DOM0级事件2.3 DOM2级事件三、鼠标事件 事件概述 事件:是可以被js检测到的行为,实质上是一种交互操作。 例如:我们可以给某按钮添加一个【onClick点击事件】,当用户对按钮发生点击时来触发某个函数。 事件的作用: (1)各个元素之间可以借助事件来进行交互 (2)用户和页面之间也可以通过事件来交互 (3)后端和页面之间也可以通过事件来交互(减缓服务器的压力) ps:注意:事件通常与函数配合使用,当事件发

SouthWindKnowMe的博客 366

【JavaScript】事件介绍

文章目录事件简介及动态静态方法区别onclick 点击执行onload 页面载入就立刻执行onblur 失去焦点会提示onchange 每次改变选项都会提示onsubmit 提交前验证表单是否合法 事件简介及动态静态方法区别 有个小小的思考,什么时候用静态方法好,什么时候用动态方法好? 个人认为静态方法适用于单独的标签,原因是每个标签上都要标注属性οnclick="onclickFun(); 如果多个标签都要一个个标记是不是是非常麻烦呢?这时候用动态方法获取同类标签对象就完美解决了这个问题。相反地,一个

weixin_43726152的博客 214
上一篇: Web的自动化开发---grunt介绍
下一篇: SRE 学习 - 承认系统的不完美性
黄玮鹏
博客等级 码龄17年 262粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值