jquery - jQuery 如何处理页面上不存在的元素?

标签 jquery

我有一个理论问题,当你让 jQuery 搜索元素/绑定(bind)到页面上不存在的元素时会发生什么。

例如,我有一个包含许多点击事件的 JavaScript 文件,但是在某些页面上,不使用这些点击事件。我没有制作多个 javascript 文件并使用重复的代码,而是将大部分代码缩小到一个文件。

$('#target').click(function() {
    alert('Handler for .click() called.');
});

基本上将我的段落总结为几个简单的句子。当 id“target”不存在时会发生什么? jquery 如何处理这样的情况?

现在,每当我在网站上工作时,FireFox 的内存使用量似乎都在疯狂增长。不确定这是否只是 FireFox,但如果我的页面上没有元素,这是否会通过绑定(bind)到不存在的元素而导致内存泄漏?

只是好奇幕后发生了什么。

谢谢!

最佳答案

如果没有元素与您的选择器匹配,您将得到一个空的 jQuery 对象(不包含任何元素)。
在空 jQuery 对象上调用除 live() 之外的任何方法都不会执行任何操作,也不会浪费资源。

关于jquery - jQuery 如何处理页面上不存在的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9284961/

相关文章:

jquery - 如何使用 jQuery 检查元素的所有绑定(bind)?

jQuery - 删除选择选项 :selected attribute on click

javascript - 使用 ajax 在点击时 POST 数据属性

javascript - 来自ajax jquery json调用的值隐藏在输入中

c# - 使用 jquery 重新加载局部 View

javascript - 如何在 Fancybox 的 onComplete 事件中使用 $(this) ?

javascript - 如何知道两个物体何时相互接触

javascript - 有没有办法将所有双击事件绑定(bind)到 jQuery/JavaScript 中的单击等效项?

Jquery 单击和光标 : pointer only targets one element

javascript - 如何在整个 div 上应用链接?