对js事件绑定的一些理解

JS 事件绑定、事件监听、事件委托详细介绍 主要介绍了JS 事件绑定、事件监听、事件委托详细介绍的相关资料,需要的朋友可以参考下 立即下载

今天在做项目的时候,在一个for循环里面添加了onclick事件,事件处理程序的输出结果并不随着循环变量的变化而变化。

我采用以下代码进行验证。

    <input type="button" value="复制">
    <script>
        for (i = 0; i < 3; i++) {
            $(":button").on("click", function() {
                alert(i);
            })
        }
    </script>
浏览器分别输出三次3

经过查阅文档及书籍后,我认为是以下原因:

在三次循环过程中,button被绑定了三个onclick事件,但事件处理函数内部的变量并不确定。在点击按钮触发事件后,从document开始进行事件捕获,运行事件处理程序,事件冒泡。

在事件处理过程中,事件处理程序函数内部变量是当前内存中储存的数值。在上述代码中,点击button时循环已经结束,i的值为3,因此浏览器会分别输出三次3。

科研效率革命:Zotero与Web of Science联动实现千篇文献一键获取 本文详细介绍了如何利用Zotero与Web of Science联动实现科研文献的高效管理,包括批量导入、智能下载和自动整理千篇文献的技巧。通过精准检索、RIS文件导出和Zotero插件设置,科研人员可以大幅提升文献获取和管理的效率,特别适合开题报告和综述写作等场景。 阅读详情

相关推荐

Materials Studio与LAMMPS联合作战:如何用msi2lmp.exe完美转换聚合物模型(含PCFF力场配置)

本文详细解析了如何利用msi2lmp.exe工具将Materials Studio中的聚合物模型高效、准确地转换为LAMMPS可识别的data文件,并重点配置PCFF力场。文章提供了从MS模型构建、文件导出到命令行转换、参数调整及转换后验证的全流程实战指南与避坑技巧,旨在帮助研究者解决模型转换中的常见问题,实现跨平台分子动力学模拟的无缝衔接。

weixin_29228781的博客 521

小程序开发中的事件绑定:从基础到实践

在小程序开发的世界里,事件绑定是实现交互功能的关键环节。它能让用户与小程序进行实时互动,比如点击按钮触发操作、滑动屏幕切换页面等。对于想要深入掌握小程序开发的开发者来说,理解并熟练运用事件绑定至关重要。接下来,我们就详细探讨小程序中的事件绑定相关知识。

m0_57836225的博客 1028

Win10 IPv6 远程桌面连接(小米路由器)

背景 由于家里是移动网,且懒得向运营商要公网IPv4,所以想着用IPv6试一下。 家里的环境是这样的: 宽带用的是移动的,没有公网IPv4,但经过测试发现IPv6是公网的 上网通过光猫拨号,而不是通过路由器 路由器是小米AC2100 光猫更改为桥接模式 路由器必须要通过PPPoE拨号,如果是光猫拨号,那么要找对应的维护人员辅助你把光猫改成桥接模式。通过PPPoE拨号路由器就能够拿到公网的IPv6网段,也就可以给底下的其他服务分配公网IPv6了。而如果是光猫拨号,那么只有路由器可以拿到公网的IP。其他的设

timczm的博客 1万+

事件及事件绑定

事件及事件绑定 一、事件理解 1.1、什么是事件 事件是用户或浏览器自身执行的某个动作,诸如点击click JavaScript制作交互效果,离不开事件,所谓事件,就是用户的某个行为,能够触发一个函数的执行 1.2、绑定事件绑定 <div id="box">点我</div> <script> box.onclick=function(){ //console.log(111); } </sc

ScumStudy的博客 1371

SPSS篇—卡方检验

今天依旧跟大家分享一个在SPSS中使用率比较高的分析方法:卡方检验。 在开始做分析之前,我们需要明白两件事情:卡方检验是什么?一般用来干什么?我们只有充分了解分析方法以后才能够正确的使用它。 卡方检验在百科中的解释是:卡方检验是用途非常广的一种假设检验方法,它在分类资料统计推断中的应用,包括:两个率或两个构成比比较的卡方检验;多个率或多个构成比比较的卡方检验以及分类资料的相关分析等。它的原理是...

小白数据营的博客 20万+

ROS专栏—基于STM32F103的INA219电源数据采集

文章主要记录了stm32f103对ina219的数据采集

热爱生活、奋斗前行 2355

事件的简介

JavaScript中事件的命名都是描述性的,比较容易理解,如单击(click)、双击(dblclick)、提交(submit)、按下鼠标(mousedown)等等。

qq_51088023的博客 1054

从零开始:MTK ISP调试中的ImagiqSimulator实战指南

本文详细介绍了MTK ISP调试中ImagiqSimulator的实战应用,从环境准备、参数加载到核心模块调整,提供全面的调试流程指南。重点讲解了DM模块参数优化技巧和常见问题解决方案,帮助工程师高效完成ISP调试工作,提升图像处理质量。

weixin_29168813的博客 491

事件和事件绑定

一.DOM 什么是事件:事件是浏览器赋予元素的默认行为,也可以理解为事件是天生具备的,不论我们是否为其绑定方法,当某些行为触发的时候,相关的事件都会被触发执行。 什么是事件绑定:给元素默认的事件行为绑定方法,这样可以在行为触发的时候,执行这个方法。 鼠标事件 click:点击事件(PC:频繁点击N次,触发N次点击事件)单击事件(移动端:30ms内没有发生第二次点击操作,算作单击事件行为,所以click在移动端有300ms延迟) dbclick:双击事件 contextmenu:鼠标右键点击触发 mouse

lly193426的博客 668

萤石云cs刷机解绑固件

萤石CS-C2C-32WFR刷机包,萤石CS-C6TC刷机包,萤石CS-C6H刷机包,萤石猫眼产品等等。萤石云摄像头固件修改,绑定手机号解绑,更换序列号教程。

海康威视技术支持 2万+

钢结构焊接连接工艺

钢结构焊接连接工艺

wwdoffice950426的博客 61

你真的理解事件绑定、事件冒泡和事件委托吗?

一文了解Web API中的事件绑定、事件冒泡、事件委托引言正文一、事件绑定1、事件和事件绑定时什么?2、事件是如何实现的?二、事件冒泡1、事件模型2、事件模型解析(1)捕获阶段(2)目标阶段(3)冒泡阶段3、addEventListener语法4、事件冒泡和事件捕获举例(1)事件冒泡(2)事件捕获(3)事件捕获VS事件冒泡三、事件代理(事件委托)四、总结和回顾结束语 引言 事件,是JS Web API比较重要的一个知识点。我们平常所看到的网页,肯多内容都要用到事件。比如说一个点击、一个下拉、一个滚动,都要用

moandaylab 776

Jetson AGX Orin平台Jetpack5升级Jetpack6,自研载板USB不工作问题调试

1. 问题描述将AGX Orin工业的新板放到定制的载板上当在ubuntu 22和Jetpack 6.1上使用SDKManager刷机时,lsusb为空,并且在引导时没有发现/注册xusb设备。USB C端口正常打开并供电,但似乎没有数据传输。在Ubuntu 18 Jetpack 5.1.4 SDKManager上同样刷机之后,usb C集线器在引导时被正确地发现,显示在lsusb中,并识别/挂载外部驱动器。

jzwjzw19900922的博客 1510

对JavaScript事件绑定的一些理解

<script> var btn=document.getElementById("btn"); /* 使用 对象.事件=函数形式绑定事件 它只能同时为同一个元素绑定同一事件一次 不能绑定多次,如果绑定多次,后面的会覆盖掉前面的 */ /* btn.onclick=function(){ alert(1); }; btn....

qq_56644849的博客 210

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

摘抄理解Javascript中的事件绑定与事件委托

理解Javascript中的事件绑定与事件委托

wqewq19的博客 297

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

javascript——对事件绑定和普通事件的理解

什么是事件绑定,什么是普通事件? 事件绑定:事件是用户或者浏览器自身进行的特定的行为,这些事件都有自己特定的名字,如:点击,加载,鼠标经过等。用于响应事件并进行特定的处理的函数就是事件处理程序。而事件绑定就是为指定的某个事件绑定指定的事件处理程序。 普通事件:给html元素添加一个特定的属性(如:onclick); 为什么要使用事件绑定? 普通事件有一个缺点,如果在普通事件里对某个节点进行两次委托事件(onclick)操作时会出现覆盖的问题,因此需要使用到事件绑定. //普通事件 html:

Fancy_vae的博客 382

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

关于js中对事件绑定与普通事件的理解

  普通事件指的是可以用来注册的事件;   事件绑定是指把事件注册到具体的元素之上。 通俗点说:   普通事件:给html元素添加一个特定的属性(如:onclick);   事件绑定:js代码中通过标记(id tag class)获取元素,给元素添加特定的方法(如:onclick); 扩展:事件监听addEventListener事件可以绑定多次事件,并进行...

andychen2000的博客 186

js事件绑定,事件流,事件代理的一些理解

一、事件绑定: 事件绑定的三种方法: 1、在DOM中直接绑定: // //this指当前发生时间的html元素 2、在js代码中绑定: var node = document.getElementById("parent-list"); node.onclick = function(){ console.log(this); //this指当前发生时间的html元

丘小光博客 425

深入理解this绑定、js的三大事件绑定

this的值范围大致上可以分为: 如果是函数调用,那么this为window,严格模式下为undefined 如果是作为一个对象的方法,那么this指向该对象。 如果是new F()创建新实例,那么this指向这个实例。 var o = {} var f = function(){ if(this === window) console.log('window'); else if(this === o) console.log('object'); } o.f =

yiyueqinghui的博客 2029

jquery和js的事件绑定的个人理解

&amp;amp;amp;amp;lt;html&amp;amp;amp;amp;gt; &amp;amp;amp;amp;lt;head&amp;amp;amp;amp;gt; &amp;amp;amp;amp;lt;style&amp;amp;amp;amp;gt; div { width: 80%; height: 80%; background-color

围巾落地的博客 212

理解Javascript中的事件绑定与事件委托

事件绑定最直接的事件绑定:HTML事件处理程序如下示例代码,通过节点属性显式声明,直接在HTML中,显式地为按钮绑定了click事件,当该按钮有用户点击行为时,便会触发myClickFunc方法。/* html */ <button id="btn" onclick="myClickFunc()"> ClickMe </button>/* js */ // 事件处理程序 var myClic

纸上得来终觉浅 10万+

.html追加的触发js事件,深入理解JS的事件绑定、事件流模型

一、JS事件(一)JS事件分类1.鼠标事件:click/dbclick/mouseover/mouseout2.HTML事件:onload/onunload/onsubmit/onresize/onchange/onfoucs/onscroll3.键盘事件:keydown:键盘按下时触发keypress:键盘按下并抬起的瞬间触发。keyup:键盘抬起触发[注意事项]①执行顺序:keydown ke...

weixin_33019705的博客 300

理解Javascript中的事件绑定与事件委托(转载)

最近在深入实践js中,遇到了一些问题,比如我需要为动态创建的DOM元素绑定事件,那么普通的事件绑定就不行了,于是通过上网查资料了解到事件委托,因此想总结一下js中的事件绑定与事件委托。 事件绑定 最直接的事件绑定:HTML事件处理程序 如下示例代码,通过节点属性显式声明,直接在HTML中,显式地为按钮绑定了click事件,当该按钮有用户点击行为时,便会触发myClickFunc方法。 /...

qq_38836118的博客 552

深入理解JS的事件绑定、事件流模型

https://www.jb51.net/article/139997.htm 一、JS事件 (一)JS事件分类 1.鼠标事件: click/dbclick/mouseover/mouseout 2.HTML事件: onload/onunload/onsubmit/onresize/onchange/onfoucs/onscroll 3.键盘事件: keydown:键盘按下时触...

weixin_30632899的博客 126
上一篇: [转载] 使用8种方法实现竖直水平居中
下一篇: js变量提升和函数提升
CodingBleeding
博客等级 码龄10年 1粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值