首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery事件处理-绑定到文档还是'body‘元素?

jQuery事件处理-绑定到文档还是'body‘元素?
EN

Stack Overflow用户
提问于 2013-04-16 13:21:17
回答 4查看 23.3K关注 0票数 22

我注意到当我们想要引用整个页面时,特别是在绑定事件时,会使用$(document)$('body')

代码语言:javascript
复制
$(document).on('click', '.myElement', function);

代码语言:javascript
复制
$('body').on('click', '.myElement', function);

性能方面的区别是什么?如果$(document)将事件绑定到整个超文本标记语言文档,为什么我们不使用$('body')来绑定像click这样的事件呢?

注意,这个问题不是指ready函数的使用,而是.on().delegate()绑定的使用。

EN

回答 4

Stack Overflow用户

发布于 2013-04-16 13:24:18

$('body')<body> html元素为目标,而$(document)以整个html文档为目标。这意味着如果要在<head>元素中引用某些内容,则需要从$(document)访问,因为这是一条直接路径。

出于您的目的,根据您向我们展示的内容,它们应该是等效的。

票数 3
EN

Stack Overflow用户

发布于 2013-04-16 13:39:49

Bodydocument的子类。正因为如此,事件将首先到达body,然后才被冒泡到document

示例:http://jsfiddle.net/CoryDanielson/JhH9V/

票数 2
EN

Stack Overflow用户

发布于 2013-04-16 13:26:29

这肯定是不同的,因为虽然在使用jQuery/JavaScript时,您可以使用这两个组件完成工作,但是不能通过css设置文档样式。你的身体可以有一个指定的高度。尝试给你的身体增加一个200px的高度和一个你选择的背景颜色(这样,你就可以看到区别了)。然后将绑定添加到文档和正文(两个事件的不同操作)。

这个实验可能对你有用。

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

https://stackoverflow.com/questions/16029340

复制
相关文章

相似问题

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