Web 事件机制研究
2021-04-13罗才华刘小园
湖南工业职业技术学院学报 2021年1期
罗才华,刘小园
(罗定职业技术学院信息工程系,广东罗定,527200)
1 事件与事件对象
Web 事件是html 与JavaScript 之间进行交互的载体与桥梁,是文档或浏览器窗口中发生的一些特定的交互瞬间,如用户鼠标经过或点击某个特定元素、按下键盘上某个按键、浏览器窗口大小发生改变、页面加载与页面滚动等动作都属于Web 事件[1]。事件最早是作为分担服务器运算负载的一种手段出现在IE3 和Netscape Navigator2 中,后来DOM2 级规范开始尝试以一种符合逻辑的方式来标准化DOM事件,目前主要浏览器都已经实现了“DOM2 级事件”[2]。事件通过监听页面的变化或者用户对页面或浏览器执行的动作,从而执行某些指定的JavaScript 代码段,达到实现某些功能的目的。
事件对象是一个包含事件具体信息的对象。该对象在事件发生时产生,并在该事件处理程序函数中以参数的形式出现,通常命名为event。比如,用户在页面中点击了某个元素,那么在产生一个事件的同时也生成了一个事件对象,该对象中包含着事件的具体信息,并可以从该对象获取到这个事件的类型和触发这个事件的具体元素。如果事件是由鼠标触发,对象中会包含鼠标触发时的位置信息;如果事件是由键盘的触发,对象中则会包含具体的按键信息等。
2 事件流
在网页中,元素是具有层级关系的。当用户从浏览器打开一个网页时,这个网页的层级关系依次为:window →document →html →body →div(或某个具体的元素)。当用户点击了一个div 元素(或其他元素)时,不仅点击了元素本身,也点击了元素的容器,甚至点击了整个页面,那么除了被点击的元素会触发事件之外,body、html 等元素也会触发事件。……
登录APP查看全文
