3

这样做的旧版本似乎不起作用..

$(".object").data('events');

..当我与此绑定时:

$(document).on("click", ".object", awesomePossumFunction() );

这不显示事件:

$(".object").data('events');
4

3 回答 3

3

我建议您不要使用 .data('events'),它已从较新版本的 jQuery 中删除。您可以在较新版本的 jQuery 中的新位置访问它,但也不建议这样做,因为它可能会发生变化。

参考:http ://bugs.jquery.com/ticket/10589

该票的重要部分是,在 1.7 中,对事件对象进行了更改,导致过去.data('events')的代码无法正常运行。新位置是jQuery._data(elem, "events")

小提琴:http: //jsfiddle.net/6PxFx/

于 2012-10-17T21:09:45.303 回答
2

如果您检查绑定到的实际元素上的事件,它应该可以正常工作:

$(document).on("click", ".object", awesomePossumFunction); //binds to document

var events  = $.data(document, 'events');  //jQuery 1.7.2 and below
var events2 = $._data(document, 'events'); //jQuery 1.8 ++

小提琴

于 2012-10-17T21:23:15.733 回答
0

你的第二行是我从未使用过的东西。处理程序可能未在您希望的位置注册。我会这样做:

$(".object").on("click", awesomePossumFunction());

让我知道这是否有任何好处。

于 2012-10-17T21:13:58.840 回答