1.event.currentTarget//在事件冒泡阶段中的当前DOM元素

$("p").click(function(event) {
alert( event.currentTarget === this ); // true
});

2.event.data//当前执行的处理器被绑定的时候,包含可选的数据传递给jQuery.fn.bind。

$("a").each(function(i) {
$(this).bind('click', {index:i}, function(e){
alert('my index is ' + e.data.index);
});
});

3.event.delegateTarget//当currently-called的jQuery事件处理程序附加元素。

$(".box").on("click", "button", function(event) {
  $(event.delegateTarget).css("background-color", "red");
});
// 为id为element的元素中的所有span元素绑定click事件
$("#element").on( "click", "span", function(event){
    // event.delegateTarget 就是id为element的DOM元素
    // this 就是当前触发事件的span元素
    alert( event.delegateTarget === this); // false
} ); // 为id为element的元素中的所有span元素绑定click事件
$("#element span").bind( "click", function(event){
    // event.delegateTarget 就是当前触发事件的span元素
    // this 就是当前触发事件的span元素
    alert( event.delegateTarget === this ); // true
} );

4.event.isDefaultPrevented()//根据事件对象中是否调用过 event.preventDefault() 方法来返回一个布尔值

$("a").click(function(event){
alert( event.isDefaultPrevented() ); // false
event.preventDefault();
alert( event.isDefaultPrevented() ); // true
});

5.event.isImmediatePropagationStopped()//根据事件对象中是否调用过 event.stopImmediatePropagation() 方法来返回一个布尔值。

   function immediatePropStopped(e) {
var msg = "";
if ( e.isImmediatePropagationStopped() ) {
msg = "called";
} else {
msg = "not called";
}
$("#stop-log").append( "<div>" + msg + "</div>" );
}
$("button").click(function(event) {
immediatePropStopped(event);
event.stopImmediatePropagation();
immediatePropStopped(event);
});

6.event.isPropagationStopped()//根据事件对象中是否调用过 event.stopPropagation() 方法来返回一个布尔值。

    function propStopped(e) {
var msg = "";
if ( e.isPropagationStopped() ) {
msg = "called";
} else {
msg = "not called";
}
$("#stop-log").append( "<div>" + msg + "</div>" );
}
$("button").click(function(event) {
propStopped(event);
event.stopPropagation();
propStopped(event);
});

7.event.namespace//当事件被触发时此属性包含指定的命名空间。

  $("p").bind("test.something", function(event) {
alert( event.namespace ); });
$("button").click(function(event) {
$("p").trigger("test.something");
});

8.event.pageX//鼠标相对于文档的左边缘的位置。

event.pageX//鼠标相对于文档的左边缘的位置。

   $(document).bind('mousemove',function(e){
$("#log").text("e.pageX: " + e.pageX + ", e.pageY: " + e.pageY);
});

9.event.preventDefault()//阻止默认事件行为的触发。

            $("a").click(function(event) {
event.preventDefault();
$('<div/>').append('default ' + event.type + ' prevented').appendTo('#log');
});

10.event.relatedTarget//在事件中涉及的其它任何DOM元素

对于 mouseout 事件,它指向被进入的元素;对于 mousein 事件,它指向被离开的元素。

$("a").mouseout(function(event) {
alert(event.relatedTarget.nodeName); // "DIV"
});

11.event.result//这个属性包含了当前事件事件最后触发的那个处理函数的返回值,除非值是 undefined 。

      $("button").click(function(event) {    return "hey";  });
$("button").click(function(event) {
$("p").html( event.result );
});

12.event.stopImmediatePropagation()//阻止剩余的事件处理函数执行并且防止事件冒泡到DOM树上。

  $("p").click(function(event){
event.stopImmediatePropagation();
}); $("p").click(function(event){
// This function won't be executed
$(this).css("background-color", "#f00"); });
$("div").click(function(event) {
// This function will be executed
$(this).css("background-color", "#f00");
});

13.event.stopPropagation()//防止事件冒泡到DOM树上,也就是不触发的任何前辈元素上的事件处理函数。

$("p").click(function(event){
event.stopPropagation(); // do something
});

14.event.target//最初触发事件的DOM元素。

function handler(event) {
var $target = $(event.target);
if( $target.is("li") ) {
$target.children().toggle();
}
}
$("ul").click(handler).find("ul").hide();

15.event.timeStamp//这个属性返回事件触发时距离1970年1月1日的毫秒数。

 var last, diff;  $('div').click(function(event) {
if ( last ) {
diff = event.timeStamp - last;
$('div').append('time since last event: ' + diff + '<br/>');
} else {
$('div').append('Click again.<br/>');
}
last = event.timeStamp;
});

16.event.type//事件类型

$("a").click(function(event) {
alert(event.type); // "click"
});

17.event.which//针对键盘和鼠标事件,这个属性能确定你到底按的是哪个键或按钮。

      <script>
$('#whichkey').bind('keydown',function(e){
$('#log').html(e.type + ': ' + e.which ); });
</script>

jQuery慢慢啃之事件对象(十一)的更多相关文章

  1. jQuery慢慢啃之事件(七)

    1.ready(fn)//当DOM载入就绪可以查询及操纵时绑定一个要执行的函数. $(document).ready(function(){ // 在这里写你的代码...}); 使用 $(docume ...

  2. jQuery慢慢啃之工具(十)

    1.jQuery.support//一组用于展示不同浏览器各自特性和bug的属性集合 2.jQuery.browser//浏览器内核标识.依据 navigator.userAgent 判断. 可用值: ...

  3. jQuery慢慢啃之ajax(九)

    1.jQuery.ajax(url,[settings])//通过 HTTP 请求加载远程数据 如果要处理$.ajax()得到的数据,则需要使用回调函数.beforeSend.error.dataFi ...

  4. jQuery慢慢啃之文档处理(五)

    1.append(content|fn)//向每个匹配的元素内部追加内容. $("p").append("<b>Hello</b>"); ...

  5. jQuery慢慢啃筛选(四)

    1.eq(index|-index) 获取第N个元素 其中负数:一个整数,指示元素的位置,从集合中的最后一个元素开始倒数.(1算起) $("p").eq(1)//获取匹配的第二个元 ...

  6. jQuery慢慢啃之核心(一)

    1. $("div > p"); div 元素的所有p子元素. $(document.body).css( "background", "bla ...

  7. jQuery慢慢啃之回调(十三)

    1.callbacks.add(callbacks)//回调列表中添加一个回调或回调的集合 // a sample logging function to be added to a callback ...

  8. jQuery慢慢啃之特效(八)

    1.show([speed,[easing],[fn]])\\显示隐藏的匹配元素 //speed:三种预定速度之一的字符串("slow","normal", o ...

  9. jQuery慢慢啃之CSS(六)

    1.css(name|pro|[,val|fn])//访问匹配元素的样式属性 $("p").css("color");//获取 $("p") ...

随机推荐

  1. 项目杂记(MONTHS_BETWEEN,Having ,Spool)

    1,oracle中计算年龄: select FLOOR(MONTHS_BETWEEN(SYSDATE, to_date('20130728', 'yyyymmdd')) / 12), trunc(mo ...

  2. Bzoj 1598: [Usaco2008 Mar]牛跑步 dijkstra,堆,K短路,A*

    1598: [Usaco2008 Mar]牛跑步 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 427  Solved: 246[Submit][St ...

  3. (DT系列二)device tree的书写规范

    devicetree的书写规范 下面从节点,属性,reg,ranges,中断控制器等几个方面叙述devicetree的书写规范. 1,dts的基本元素:节点 .dts(或者其include的.dtsi ...

  4. 使用Pig预测电信用户的移动路径

    实战数据: 预期结果: 测试数据: 002|2014-09-10 00-09|东油大学 002|2014-09-10 09-17|学苑小区 001|2014-09-12 00-09|东油大学 001| ...

  5. 缺少HTML Doctype造成的样式问题

    很简单的一个登陆界面: 代码: <html> <head> <style type="text/css"> form span { displa ...

  6. c 语言结构体struct的三种定义方式 及 typedef

    struct 结构体名{ 成员列表: ..... }结构体变量: 结构体类型变量的定义 结构体类型变量的定义与其它类型的变量的定义是一样的,但由于结构体类型需要针对问题事先自行定义,所以结构体类型变量 ...

  7. JAVA 调用Axis2 code generator 生成的webservice

    以下代码为调用 JAVA 调用Axis2 code generator 生成的webservice的代码. package test; import java.rmi.RemoteException; ...

  8. UNITY打包问题

    1,打包有二种,打包可执行程序-player,打包资源包-assetbundle 2,打包player后,在PC平台去看打包后对应的资源大小,发现比原始资源小得多,模型资源压缩率约60%,图资源压缩率 ...

  9. java 递归函数

    一.递归函数,通俗的说就是函数本身自己调用自己...  如:n!=n(n-1)!  你定义函数f(n)=nf(n-1)  而f(n-1)又是这个定义的函数..这就是递归  二.为什么要用递归:递归的目 ...

  10. MATLAB中导入数据:importdata函数

    用load函数导入mat文件大家都会.可是今天我拿到一个数据,文件后缀名竟然是'.data'.该怎么读呢? 我仅仅好用matlab界面Workspace区域的"import data&quo ...