2014-05-07 66 views
0

我试图实现事件代表团香草JS,但这似乎并没有工作:事件委派工作不

document.getElementById('main').addEventListener('click hold pinch', expandEventDel); 
    function expandEventDel(event){ 
     if($(event.target).is('.dataCard') || $(event.target).parentsUntil(this).is('.dataCard')){ 
      alert("clicked, held, or pinched"); 
     } 
    } 
+2

你在那里有jQuery选择器,你使用jQuery吗? –

+0

^^他说什么,你在这里混合东西,添加多个事件addEventListener,使用jQuery函数等。你使用jQuery吗? – adeneo

+0

@ChristopherMarshall除了事件监听之外,我可以使用jQuery。 – MrGuru

回答

0

由于addEventListener只接受一个事件,因此可以轻松制作事件附件。

var events = ["click","hold","pinch"]; 
for (var i=0; i<events.length; i++) { 
    document.getElementById('main').addEventListener(events[i], expandEventDel); 
} 

虽然因为你已经有明显的jQuery加载,你还不如用它,不是吗?

哦,并且alert不应该用作调试语句。只是一个protip那里。

+0

我没有使用警报作为调试,只是现在。但是,谢谢 – MrGuru

1

香草addEventListener只能采取单一的事件类型。

+0

好,但除此之外,我做对了吗? – MrGuru

+0

呃,看起来正确 – guest