7

我刚刚注意到它live()在 jQuery 中已经被弃用了。我有一个快速的问题(只是为了确定哪种方法最有效、最快和最新)。我已经拥有myfunction()并且我想将bind()它用于所有当前和未来的元素attr("title") == 'x'

这是我应该使用的:

jQuery("???").bind("mouseup", myfunction);
jQuery("???").bind("keyup", myfunction);

或这个:

jQuery("???").delegate("???", "mouseup", myfunction);
jQuery("???").delegate("???", "keyup", myfunction);

或这个:

jQuery("???").on("mouseup", "???", myfunction);
jQuery("???").on("keyup", "???", myfunction);

我在指定正确的选择器时也遇到了问题——因为它们中的一些允许将事件附加到一件事(如正文或文档)上,并且它们允许第二个选择器。

4

2 回答 2

11

.on()改为使用属性等于选择器

$(document).on('mouseup', '[title="x"]', myfunction);
于 2012-08-26T20:16:44.007 回答
6

替换的语法.live()是这样的:

$('#parent').on('keyup mouseup', '.children', myfunction);
于 2012-08-26T20:15:10.720 回答