js中的this上下文会因事件而转换成html dom对象。

所以就有这样获取当前触发事件的dom对象:

 window.event.srcElement || window.event.target;
var e = window.event || e;
var srcElement = e.srcElement || e.target;
var id=srcElement.id.split("_")[];//不采用闭包的话就只能手动加id了

jquery的话,就$('this')

但是在MVC的工程内部,比如事件对象是evt:

evt.srcElement (IE支持,对于生成事件的 Window 对象、Document 对象或 Element 对象的引用。)

evt.target (返回触发此事件的元素)

evt.currentTarget(返回其事件监听器触发该事件的元素,在捕获和起泡阶段,该属性是非常有用的,因为在这两个节点,它不同于 target 属性。)

evt.bubbles(指示是否起泡事件类型)

有趣的是,在appframework中如果采用的是on方法,事件委托给父级节点,那么srcElement,target,currentTarget全都指向了该父节点,而不会指向实际触发事件的子元素。

照理说,target应该是指向事件的目标节点,应该返回真正触发事件的子元素。

一般在事件绑定的时候指定的回调函数里面就可以接收这个e参数,

比如:

itu.event.on($el.find(me.PIC), "tap", me.picTrigger, me);

picTrigger : function(e){
  var me = this,$el = me.$element;
  var id = $(event.target).data("id");
  $el.trigger("reviewList",id);
}

这样就可以获取PIC元素的自定义属性data-id值

框架中的HTML DOM Event 对象的更多相关文章

  1. 浏览器端-W3School-JavaScript-HTML DOM:HTML DOM Event 对象

    ylbtech-浏览器端-W3School-JavaScript-HTML DOM:HTML DOM Event 对象 1.返回顶部 1. HTML DOM Event 对象 实例 哪个鼠标按钮被点击 ...

  2. HTML DOM Event对象

    我们通常把HTML DOM Event对象叫做Event事件 事件驱动模型 事件源:(触发事件的元素)事件源对象是指event对象 其封装了与事件相关的详细信息. 当事件发生时,只能在事件函数内部访问 ...

  3. laravel框架中Job和事件event的解析

    本篇文章给大家带来的内容是关于laravel框架中Job和事件event的解析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 在做项目的时候,一直对Job和Event有个疑惑.感觉两 ...

  4. html中事件处理中的this和event对象

    在用js编写页面事件处理代码时,会经常涉及到this和event对象,但有时在采用不同的事件处理,尤其是在与自定义的对象关联时,这些对象的指向变的有些复杂. 本文来详细介绍下各种场景下 这些对象 真正 ...

  5. Dom EVENT对象

    Event 对象代表事件的状态,比如事件在其中发生的元素.键盘按键的状态.鼠标的位置.鼠标按钮的状态. 事件通常与函数结合使用,函数不会在事件发生前被执行! 一:测试按键 function which ...

  6. HTML DOM Event 对象

    var event;if (document.createEvent){event = document.createEvent("HTMLEvents");event.initE ...

  7. JavaScript学习笔记(11)——HTML DOM Event对象

    w3cshool:时间参考手册:http://www.w3school.com.cn/jsref/dom_obj_event.asp

  8. DOM中Event 对象如何使用

    DOM中Event 对象如何使用 一.总结 一句话总结: 1.将event作为参数传递进来,然后就可以调用event对象的各种属性和方法了. <body onmousedown="wh ...

  9. vue中如何使用event对象

    原文地址 一.event 对象 (一)事件的 event 对象 你说你是搞前端的,那么你肯定就知道事件,知道事件,你就肯定知道 event 对象吧?各种的库.框架多少都有针对 event 对象的处理. ...

随机推荐

  1. Visual Studio2012 Lua插件--BabeLua

    之前,找了好久VS2012的Lua插件,没有找到. 今天在http://www.cocoachina.com/bbs/read.php? tid-205043.html 看到了.cocos2dx-qu ...

  2. 【NodeJs】用arrayObject.join('')处理粘包的错误原因

    服务器测试代码如下: var net = require('net'); var server = net.createServer(function(c){ console.log('client ...

  3. NDK-r7以上版本部署方法

    一.关于NDK: NDK全称:Native Development Kit. 1.NDK是一系列工具的集合. NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和jav ...

  4. java 数组注意点

    int[] array1 = new int[4]; int[] array2 = new int[6]; int[] array3 = new int[8]; array2 = array1; ar ...

  5. Java根据ip地址获取Mac地址,Java获取Mac地址

    Java根据ip地址获取Mac地址,Java获取Mac地址 >>>>>>>>>>>>>>>>>&g ...

  6. 原生js日期时间插件鼠标点击文本框弹出日期时间表格选择日期时间

    原文出处 (这是我从互联网上搜来的,感觉能满足各方面的需求.个人感觉挺不错的,所以后期修改了一下向大家推荐!) 效果图: html代码: <!DOCTYPE html PUBLIC " ...

  7. div a块状布局

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  8. [图文]centos6.3搭建FTP服务器教程

    我一开始是参照这个教程做的 http://www.linuxren.net/better/centos63-ftp.html 可是问题总是免不了的,我遇到几个问题. 一开始使用terminal的时候一 ...

  9. 在自定义的web监听器中嵌入web中的定时事件

    在 http://www.cnblogs.com/myadmin/p/4806265.html 中说明了自定义web监听器的一些东西. 本文中的web定时任务也基于上篇文章的自定义web监听器. 新建 ...

  10. (转)xml序列化

    在 .NET Framework 中提供两种串行化方法,一种是二进制法,另一种是xml串行化. 序列化是将对象状态转换为可保持或传输的格式的过程,xml序列化是将对象的公共字段和属性序列化为xml流. ...