zoukankan      html  css  js  c++  java
  • javascript事件冒泡和捕获

    首先理解一下事件:

      这里又引出了两个概念

          1: 消息

          2: 事件响应

      当浏览器页面文档的DOM元素发生事件时,将向浏览器发出一个消息(message),这个消息以Event对象的形式生成并沿着DOM树向上传播.浏览器事件的种类很多,包括鼠标点击,鼠标移动,键盘,失去与获得焦点等等.在Javascript中,这些事件都以对应的属性来表示,将一个闭包(我们知道其实函数就是闭包)赋给这个属性,或者注册到这个属性,这个闭包就成为这个事件的处理函数,也成为事件句柄.闭包的执行过程被称为事件响应.

    那么我们继续看

    <script>
    document.getElementsByTagName("input")[0].onclick=function(){
                console.log(arguments.length); // Firefox为1 , IE为0
                console.log(typeof window.event); //Firefox 为undefined , IE为object
            }
    </script>
    <input type="button" value="点击" />

    Netscape和Microsoft对Event对象处理是不同的. 在IE下event对象会作为window下的属性存在,而Netscape下event对象是被作为事件接收函数(闭包)的参数传递的.

    解决兼容Netscape和Microsoft的event对象兼容:

    <script>
              document.getElementsByTagName("input")[0].onclick=function(event){
    			var event=event || window.event;	
    		}
    </script>
    
  • 相关阅读:
    jQuery.API源码深入剖析以及应用实现(4) - 选择器篇(下)
    jquery表单应用
    随笔 没顾虑
    jquery基础技巧总结
    jQuery.API源码深入剖析以及应用实现(3) - 选择器篇(上)
    JQuery语法总结和注意事项
    5个jQuery问题和解答
    Jquery编辑数据
    jquery 对checkbox的操作
    有关jQuery动画的认识
  • 原文地址:https://www.cnblogs.com/unbreakable/p/2581426.html
Copyright © 2011-2022 走看看