在Jquery委托事件处理程序中获取选择器

时间:2014-07-16 11:02:02

标签: javascript jquery jquery-selectors delegates event-handling

我有以下代码

这里我有2个选择器" td.slot"和" td.slot1"和2个事件" mouseover"和" mouseleave"。

正如您所看到的,我正在使用e.type来获取其中一个事件。现在我想知道是否有类似e.selector的方式,我可以获得其中一个选择器

 $(document).ready(function(){
  $("table").delegate('td.slot,td.slot1','mouseover mouseleave',function(e){

   var row = $(this).parent()[0];
   var rowHead = row.cells[0];
   var colHead = row.parentNode.rows[0].cells[$(this).index()];

   if (e.type == 'mouseover') {
    $(rowHead).css("background-color","orange");
    $(colHead).css("background-color","orange");    
   }
   else
   {
    $(rowHead).css("background-color","white");
    $(colHead).css("background-color","white");
   }


  });

1 个答案:

答案 0 :(得分:0)

描述

您可以使用event.currentTarget

  

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

样品

HTML

<body>
    <div>div</div>
    <button>button</button>
</body>

的jQuery

$("body").delegate('div,button','click',function(e){ 
    alert($(this));
});

查看此jsFiddle

更多信息: