• jQuery事件对象event的属性和方法


    事件处理(事件对象、目标元素的获取,事件对象的属性、方法等)在不同浏览器之间存在差异,jQuery在遵循W3C规范的情况下做了封装统一

    一、事件对象常用的属性:
    • event.type:获取事件的类型,触发元素的事件类型
    $("a").click(function(event) {
      alert(event.type); // "click"事件
    });
    • event.pageX 和 event.pageY:获取鼠标当前相对于页面的坐标,可以确定元素在当前页面的坐标值,是以页面为参考点,不随滑动条移动而变化
    $("a").click(function(event) {  
      alert("Current mouse position: " + event.pageX + ", " + event.pageY );
      return false;
    });
    • event.target:获取触发事件的元素

      thisevent.target的区别:

        js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化,它永远是直接接受事件的目标DOM元素;

        this和event.target都是dom对象,可以转换为jquery对象:$(this)和$(event.target)

    $("a[href=http://www.baidu.com]").click(function(event) {  
      alert(event.target.href);  
      return false;
    });  
    • event.which:获取在鼠标单击事件中鼠标的左、中、右键(左键1,中间键2,右键3),在键盘事件中键盘的键码值
    $("a").mousedown(function(e){  
        alert(e.which);  
        return false;
    }) 
    • event.currentTarget : 获取冒泡前的当前触发事件的DOM对象, 等同于this

    二、事件对象常用的方法:

    • event.preventDefault() :阻止默认行为,可以用 event.isDefaultPrevented() 来确定preventDefault是否被调用过了
    • event.stopPropagation() :阻止事件冒泡,事件是可以冒泡的,为防止事件冒泡到DOM树上,不触发任何前辈元素上的事件处理函数,可以用 event.isPropagationStopped() 来确定stopPropagation是否被调用过了
  • 相关阅读:
    无法作为数据库主体执行,因为主体 "dbo" 不存在、无法模拟这种类型的主体,或您没有所需的权限
    sql server 2008收缩数据库日志
    c#基本语法
    写点东西
    转载 程序人生成长发展中的一些感悟
    C#基本问题
    对象入门
    21k8s部署discuz
    Mysql基础管理
    将枚举作为参数,迭代枚举。Passing Enum type as a parameter
  • 原文地址:https://www.cnblogs.com/yanglang/p/9774638.html
Copyright © 2020-2023  润新知