jQuery事件对象---常见属性

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/twilight_karl/article/details/73335816

event对象常见属性

属性 含义
type 获取这个事件的事件类型的字符串,例如:click
target 获取与事件绑定的 DOM 元素
data 获取事件调用时的额外数据
relatedTarget 获取移入移出目标前所在的元素
currentTarget 获取冒泡前触发的 DOM 元素,等同与 this
pageX/pageY 获取相对于页面原点的水平/垂直坐标
screenX/screenY 获取显示器屏幕位置的水平/垂直坐标(非 jQuery 封装)
clientX/clientY 获取相对于页面可见部分的水平/垂直坐标(非 jQuery 封装)
result 获取上一个相同事件的返回值
timeStamp 获取事件触发的时间戳(字符串)
which 获取鼠标的左中右键(1,2,3),或获取键盘按键
altKey/shiftKey/ctrlKey/metaKey 判断在点击的同时是否按下了 alt、shift、ctrl键

Target

  • target 获得触发元素的DOM(点击的元素)
  • currentTarget得到的是监听元素的DOM(绑定的元素)

对于样式:

<div style="width:300px;height:300px;background-color:skyblue;">
    <span style="width:100px;height:100px;background-color:yellow;display:block"></span>
</div>

<script>
    $("div:eq(0)").bind("mouseover",function(event){
    //  alert(event);           // [object Object]
    //  alert(event.type);      // click
    //  alert(event.target);    // 点击的元素    [object HTMLSpanElement]/[object HTMLDivElement]
    //  alert(event.currentTarget); // 总是div    [object HTMLDivElement]
        alert(event.relatedTarget);
    });
</script>

用鼠标进入事件模拟三种target的效果:

target:

jQuery事件对象---常见属性

currentTarget:

jQuery事件对象---常见属性

relatedTarget:

jQuery事件对象---常见属性

data

通过 event.data 获取额外数据,可以是数字、字符串、数组、对象

    $(":button:eq(1)").bind("click","sss",function(e){
        alert(e.data);
    });

pageY、screenY、clienty

  • pageY 是对于页面顶端的距离,包括未显示的部分,所以常用于滚动条,随着滚动条改变
  • screenY 是对于屏幕顶端的距离,不随滚动条改变
  • clienty 是相对于页面可见部分顶端的距离,不随滚动条改变

jQuery事件对象---常见属性

which

判断鼠标点击,不过实验的时候好像只有左键有效 (/= _ =)/~┴┴

    $(":text").click(function(e){
        alert(e.which);
    });

判断键盘按下的值

    $(":text").keydown(function(e){
        alert(e.which);
    });
上一篇:Java 方法method


下一篇:解决AJAX中使用UpdatePanel后无法弹出js对话框问题(引)