JavaScript处理各种事件详解
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
:Javascript处理各种事件详解 Javascript处理各种事件详解图1 大力按下电梯中的求助按钮,维护人员就会来修理电梯 当用户在网页上执行移动鼠标、点击按钮、提交表单等操作,会触发相应的事件,Javascript脚本可以对特定的事件进行处理,从而实现与用户的交互。 例如当用户点击网页上的按钮,会触发onclick事件。如图2所示,以下代码表明当用户点击add按钮,浏览器会执行Javascript脚本中的add()函数:
图2 Javascript脚本的add()函数处理onclick事件 表1列出了常用的事件,对这些事件的触发时机作了说明。这些事件可分为三类:表单相关事件、鼠标键盘事件、页面相关事件。 表1 JavaScrip脚本可以处理的事件 1. onfocus获得焦点和onblur失去焦点事件 例程1的focus.html演示处理onfocus和onblur事件。当焦点进入网页上的username文本输入框,该输入框的背景色变为绿色,当焦点离开,背景色改为白色。 例程1 focus.html
在dofocus()函数中,window.event表示当前的onfocus事件,event.srcElement表示触发当前事件的username文本输入框,element.style.background表示username文本输入框的背景色。 在本范例中,dofocus()函数把username文本输入框的背景色改为绿色,doblur()函数把背景色改为白色,参见图3。 图3 Javascript脚本会改变username文本框的背景颜色 2. onsubmit表单提交和onreset表单重置事件 当用户按下表单中的提交按钮,会触发onsubmit事件,按下重置按钮,会触发onreset事件。 以下输入框的type属性的值分别为submit和reset,分别表示提交按钮和重置按钮:
以下代码指定dosubmit()函数处理onsubmit事件,doreset()函数处理onreset事件,action属性指定把表单提交给后端的hello.jsp处理:
例程2的form.html演示了对onsubmit事件的处理过程。当onsubmit事件触发后,浏览器首先执行dosubmit()函数。接下来,浏览器会根据dosubmit()函数的返回值来决定是否请求访问后端的hello.jsp。如果该函数返回true,浏览器就会请求访问hello.jsp;如果该函数返回false,则不会请求访问hello.jsp。 例程2 form.html
以上dosubmit()函数会检查username文本输入框,如果值为空,就提示用户输入username,并返回false;否则返回true。因此,只有当username文本输入框不为空,浏览器才会把表单提交给后端的hello.jsp,参见图4。 图4 dosubmit()函数的执行流程 例程3是hello.jsp的代码,它会读取表单中的username输入框的值,并把它输出到网页中。 例程3 hello.jsp
当用户在form.html的表单的username输入框中输入weiqin,hello.jsp会返回“Hello,weiqin”,参见图5。 图5 后端hello.jsp处理用户提交表单的请求 3. onclick鼠标单击事件 当用户单击网页上的按钮、图片等元素,会触发onclick事件。 例程4的bgcolor.html会在网页上显示一个change按钮,点击该按钮,网页的背景色会在红色与白色之间切换。document.bgColor表示网页的背景色。 例程4 bgcolor.html
4. onmouseover鼠标移入和onmouseout鼠标移出事件 当用户在网页上把鼠标移入某个元素的区域,会触发onmouseover事件,把鼠标移出某个元素的区域,会触发onmouseout事件。例程5的opacity.html演示了对这两种事件的处理。 例程5 opacity.html
opacity.html会显示一张图片,当鼠标移入该图片区域,图片的透明度设为1,当鼠标移出该图片区域,透明度设为0.3,参见图6。visible(element,n)函数中的element参数表示鼠标移入的元素或移出的元素,此处为图片。参数n表示图片的透明度。 图6 图片的透明度随着鼠标的移入和移出发生改变 5. onkeydown按键事件 当用户在网页上按下键盘的键就会触发onkeydown事件。例程6的box.html演示了对onkeydown事件的处理。 例程6 box.html
在dokeydown()函数中,event.keyCode表示键的键码。每个键都有固定的键码,例如LEFT、RIGHT、UP、DOWN键的键码分别为37、39、38、40。 box.html会在网页上显示一个红色的色块,当按下键盘的LEFT、RIGHT、UP、DOWN键,色块就会向相应的方向移动,参见图7。 图7 通过键盘上的方向键来移动色块 6. onload页面加载和onunload页面卸载事件 当用户访问某个网页,浏览器就会先加载该网页,此时会触发onload事件。当用户离开网页、刷新网页或关闭浏览器时,会触发onunload事件。 例程7的page.html在例程-5的opacity.html的基础上,增加了对onload事件的处理。当浏览器加载page.html页面时,会把页面上图片的透明度设为0.3。document.images[0]表示页面上的第一个图片。 例程7 page.html
该文章在 2023/11/18 10:06:56 编辑过 |
关键字查询
相关文章
正在查询... |