我正在更新我的脚本,所以那些正在使用jQuery 1.9 +
live
已删除,我必须将其转换为on
语法。 There are some examples on the jQuery documentation。文档给出:
$(selector).live(events, data, handler); // jQuery 1.3+
$(document).on(events, selector, data, handler); // jQuery 1.7
所以
$("a").live("click", handler)
应转换为$(document).on("click","a", handler)
,依此类推。
但是当我没有selector
时如何转换?在我的情况下,这是一个插件。
$(this).live("click", handler)
这不起作用:
$(document).on("click",$(this), handler)
- 修改
我需要委托,所以bind
不是解决方案。这是在插件中使用的,我的代码是
elem.live("click", handler)
,其中elem
有时是选择器,有时是$(this)
。我对此无法控制。
答案 0 :(得分:0)
只需使用
$(this).on("click", handler);
或
$(this).click(handler);
答案 1 :(得分:0)
.on方法可以如下使用:
$(document).on("click", function (e) {
// handle the click
});
此外,在代码中,$(this)
将是文档本身,而不是您想要单击要绑定的内容。
答案 2 :(得分:0)
正在寻找.context property。这个问题的答案是
$(document).on("click", $(this.context), handler)