首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Keyup模糊函数

Keyup模糊函数
EN

Stack Overflow用户
提问于 2013-08-02 11:47:57
回答 2查看 689关注 0票数 3

为什么

代码语言:javascript
复制
$(document).on("keyup blur", "#my_selector", function() {
    //DO SOMETHING
});

不过,似乎很管用

代码语言:javascript
复制
$("#my_selector").on("keyup blur", function() {
    //DO SOMETHING
});

不是吗?我把它们都放在我的现成函数中,虽然上面的函数可以工作,但是低的函数不能工作,这是在我的previous question的上下文中。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-02 11:56:07

$('selector').on('event')的工作方式类似于$.bind。

$(document).on('event', 'selector')的工作方式类似于$.live。

换句话说,$('selector').on将事件处理程序附加到当前存在的节点。

如果事件处理程序创建时$('#my_selector')为空,则事件处理程序将不会附加到该事件处理程序。

另一方面,$(document)总是可用的,您可以始终将事件处理程序附加到它。

$(document).on('event', 'selector', function() { ... })将事件处理程序附加到文档中,并通过“选择器”对其进行筛选。因此,这就像以前版本的$().live()中的jQuery一样,您应该以这种方式使用事件绑定。

票数 1
EN

Stack Overflow用户

发布于 2013-08-02 11:51:53

如果#my_selector项是动态添加的(例如在Ajax调用完成后),那么您可能在DOM中元素存在之前附加direct事件处理程序。在这种情况下,事件处理程序将不附加任何内容。第一个附加了一个delegated事件处理程序,所以元素何时出现在DOM中并不重要,事件处理程序将被执行。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18016170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档