Javascript事件模型的案例分析
本文给出了Javascript事件模型的使用示例,供大家参考,具体分析如下:一、事件模型
冒泡事件(冒泡):事件从叶节点转移到祖先节点到根节点。
捕获事件(捕获):DOM树的顶部元素到最精确的元素,与气泡事件相反。
DOM标准事件模型:DOM标准支持泡沫事件和捕获事件,这是它们的组合。首先是捕获模式,然后是气泡传输。
两。事件对象
在IE浏览器中,事件对象是窗口的属性,而在DOM标准中,事件必须作为事件处理函数的惟一参数传递。
获取兼容的事件对象:
函数(事件){
事件是作为DOM标准参数的参数传入函数。
事件=事件:window.event;
}
在伊江,该事件的对象是包含在事件的srcelement,和DOM标准,对象是包含在目标属性
获取兼容事件对象指向的元素:
VaR目标= event.srcelement event.srcelement:event.target;
前提是确保事件对象获得正确。
三、事件侦听器
在IE下,注册侦听器按逆序执行,即注册侦听器的第一个执行。
element.attachevent('onclick,观察员); / /注册监听器
element.detachevent('onclick,观察员) / /删除监听器
第一个参数是事件名,第二个参数是回调处理函数。
DOM标准下:
element.addeventlistener(听到咔哒声,观测器,useCapture)
element.removeeventlistener(听到咔哒声,观测器,useCapture)
第一个参数是事件名。没有前缀。第二个参数是回调处理函数。第三个参数表示回调函数是在捕获阶段还是冒泡阶段调用的,默认的true是捕获阶段。
四。事件传递
兼容取消浏览器的事件交付
功能somehandler(事件){
事件=事件window.event | |;
如果(事件。里面) / / DOM标准
event.stoppropagation();
其他的
event.cancelbubble = true; / / IE标准
}
取消事件交付后的默认处理
功能somehandler(事件){
事件=事件window.event | |;
如果(事件。preventDefault) / / DOM标准
事件。preventDefault();
其他的
event.returnvalue = true; / / IE标准
}
希望本文能对大家的javascript程序设计有所帮助。